وجود نشانک htm. Bookmark OS یک مدیر نشانک قدرتمند و راحت است. برخی از ویژگی های مهم شی نشانک

10.5.4 شی نشانک

شی Word.Bookmark، اعمال نشانک ها در الگو، گرفتن اشیاء Selection و Range از اشیاء Bookmark

شی Bookmark فقط یک نشانک است. در عمل، این بیشترین است راه راحتپیمایش در اسناد ایجاد شده با استفاده از الگوها (به عنوان مثال، گزارش). تفاوت اساسیاثر آن از اشیاء Selection و Range این است که وقتی سند بسته می‌شود، همه انتخاب‌ها و محدوده‌ها از بین می‌روند (اشیاء محدوده معمولاً فقط در طول عملیات رویه‌ای که آنها را ایجاد کرده است وجود دارند و نشانک‌ها با سند ذخیره می‌شوند. اگر سند ایجاد شود. بر اساس یک الگو، سپس تمام نشانک‌هایی که در الگو تعریف شده‌اند در سند ایجاد شده بر اساس این الگو تعریف می‌شوند.

ایجاد نشانک (منو درج کنید -> نشانک) بسیار ساده تر از شمارش تعداد کاراکترهای یک شی Range از ابتدای سند/پارگراف/جمله یا انجام عملیات Move() (MoveDown)، MoveRight()، MoveNext()) روی یک شی Selection است. همچنین، اگر قالب را اصلاح کنید (که در عمل بسیار انجام می دهید)، احتمالاً نیازی به تغییر کد برای تعریف اشیاء Selection و Range ندارید.

عملکرد شی Bookmark عالی نیست. این شی دارای خواص و روش های بسیار کمتری نسبت به اشیاء Selection و Range است. با این حال، معمولاً هیچ کس سعی نمی کند از شی Bookmark برای کار مستقیم با متن استفاده کند. دریافت یک شی Selection (با استفاده از متد Select()) یا یک شی Range (با استفاده از ویژگی Range()) از شی Bookmark بسیار آسان است - و سپس می توانید از خواص و متدهای این اشیا استفاده کنید، به عنوان مثال:

ThisDocument.Bookmarks("Bookmark1").انتخاب کنید

MsgBox Selection.Text

ایجاد اشیاء نشانک به صورت برنامه‌ای اختیاری است، اما در صورت لزوم، می‌توانید از متد Add() مجموعه Bookmark استفاده کنید:

ThisDocument.Bookmarks.Add Name:="temp", Range:=Selection.Range

این روش تنها دو پارامتر دارد که هر دو در مثال استفاده شده است.

برخی از ویژگی های مهم شی Bookmark:

  • خالی- اگر این ویژگی True را برگرداند، به این معنی است که نشانک به نقطه درج اشاره می کند و نه متن.
  • نام- نام نشانک بسیار راحت است که می توانید نشانک مورد نظر را در مجموعه نشانک ها نه تنها با استفاده از نمایه (تعداد) نشانک، بلکه با نام آن پیدا کنید.
  • دامنه- یک شی Range را در محل این نشانک برمی گرداند.
  • شروع کنید, پایان, نوع داستان- شبیه به همان ویژگی های شی Selection.

شی Bookmark تنها سه روش دارد - Copy()، Delete() و Select(). Copy() - یک نشانک را بر اساس یک نشانک موجود ایجاد می کند، Delete() - آن را حذف می کند و Select() - آنچه نشانک به آن اشاره دارد را برجسته می کند.

در جریان صفحات html، ما اغلب به منابع مختلف در وب یا به صفحات وب سایت خود پیوند می دهیم.

در واقع شبکه یکی از مهمترین مزیت های اینترنت است که به توسعه آن کمک می کند.

که در آن پارامتر href آدرس سند (url) که انتقال به آن انجام خواهد شد را مشخص می کند.

انتقال با کلیک بر روی "نام پیوند" انجام می شود.

آدرس سند را می توان روی مطلق (http://site.ru) یا نسبی (page.html) تنظیم کرد. ترجیحاً از آدرس دهی مطلق در پیوندها استفاده شود، زیرا چنین پیوندی در همه جا کار می کند. پیوندهای نسبی نسبت به سایت فعلی کار می کنند.

ما می دانیم که لینک ها هم در ارتقای سایت ها در وب و هم از نظر راحتی استفاده از آنها توسط بازدیدکنندگان از منابع موجود در اینترنت نقش مهمی دارند. بنابراین، مدیران وب‌سایت‌ها اغلب از لینک‌ها برای ارائه موارد اضافی استفاده می‌کنند اطلاعات مفیدبازدیدکنندگان سایت هایشان

در تگ html ، یک ویژگی مفید دیگر وجود دارد که بسیار کمتر از لینک بیلدینگ استفاده می شود، این قابلیت ایجاد نشانک های html است. به نشانک های یک صفحه، لنگر نیز گفته می شود.

چگونه کار می کند?

با کمک (یا لنگرها)، برچسب ها را ایجاد می کنیم. و سپس، با ایجاد یک پیوند به این برچسب، می توانیم آن را به نشانک (لنگر)، در چارچوب این سند html دنبال کنیم.

به عبارت دیگر، اگر در سایتی صفحه ای باز می کنید که اطلاعات زیادی دارد، برای مشاهده این صفحه باید دائماً آن را اسکرول (اسکرول) کنید.

برای سهولت یافتن اطلاعات در چنین صفحه ای، می توانید آن را نشانه گذاری کنید. در نتیجه، خواننده صفحه این فرصت را دارد که به سرعت به اطلاعات مورد علاقه خود بپرد.

در اینجا نحو برای نشانه گذاری ورودی ها و پیوند دادن به آنها آمده است:

1. ایجاد یک نشانک html در صفحه با نام (برچسب) "identifier1":

متن

فراموش نکنید که نام شناسه نشانک ها باید به زبان لاتین نوشته شود، در اینجا یک مثال آورده شده است:

یک نشانک در این مکان ایجاد شده است.

با شناسه zakladka1 به نشانک بروید

همانطور که می بینید، برای رفتن به نشانک ایجاد شده، باید یک پیوند به آن ایجاد کنید، به عنوان آدرس پیوند، نام شناسه نشانک با علامت هش #

پیوند به نشانکی به نام zakladla سند یک سایت دیگر

سلام به همه، امروز در مورد استفاده از بوک مارکلت یا نشانک برای مرورگر صحبت خواهیم کرد.

برای کسانی که نمی‌دانند، این چیزی است که می‌توانید آن را نشانه‌گذاری کنید (بله، من امروز به عنوان Captain Obvious اولین کار را انجام می‌دهم :) و وقتی روی آن کلیک کنید، جلوه‌ای ایجاد کنید.

به عنوان مثال قهرمان یادداشت امروز است که در http://ulizko قرار دارد. com/demo/allthat/. دستورالعمل استفاده:

  1. پیوند "پیوند" را به نوار نشانک ها بکشید یا روی آن کلیک راست کرده و آیتم منو "افزودن به موارد دلخواه" را انتخاب کنید.
  2. به وب سایتی مانند http://twitter. comو روی این نشانک (خوب، یا بر روی موارد دلخواه) کلیک کنید.

پنجره ای ظاهر می شود که در آن می توانید داده ها را وارد کنید. به طور کلی، قرار است رابطی برای افزودن خواسته ها به لیست های علاقه مندی (که قبلاً در برخی از سایت ها ایجاد شده است)، تنظیم محرک های هشدار و غیره باشد. حتی نوعی تایید وجود دارد سطح ورودی. و تبادل داده با سرور برقرار می شود - یعنی در هر دامنه ای لیستی از لیست های خواسته های شما به شما می رسد و آرزوی جدید شما از هر دامنه ای بر روی بال های عشق به لیست آرزوها پرواز می کند و در آغوش آن راحت می شود.

ولی. امروز ما در مورد این صحبت نمی کنیم، بلکه در مورد چگونگی انجام چنین کارهایی در اصل صحبت می کنیم.

قبل از اینکه مستقیماً به تجزیه و تحلیل کد بپردازم ، می خواهم به این سؤال (که هیچ کس از من نپرسید :) پاسخ دهم ، یعنی "بوک مارکلت چه فرصت هایی را ارائه می دهد؟". پاسخ صحیح هر کدام است. از آنجایی که ما توانایی بارگذاری هر اسکریپتی را داریم، می‌توانیم هر کاری که بخواهیم با صفحه مشتری انجام دهیم. به عنوان مثال - برای ایجاد یک ویجت "از راه دور"، که در آن در هر صفحه می توانید یک ورودی به دفترچه یادداشت یا مدیر وظیفه اضافه کنید. یا حتی کل Task Manager را از راه دور کنید. آنچه همچنین مهم است، آنها تقریباً در همه جا کار خواهند کرد - اینها افزونه هایی برای فایرفاکسی و ویجت های اپرا نیستند. Bookmarklet ها اهمیتی نمی دهند (خوب، تقریباً :) چه سیستم عامل یا مرورگری دارید. به طور کلی، جای تخیل وجود دارد.

بنابراین، چگونه می‌توانید همین بوکمارکت‌ها را بسازید؟
بسیار ساده: باید یک عنصر لنگر در صفحه با ویژگی href حاوی کد جاوا اسکریپت ایجاد کنید. اگر به روسی ترجمه شده باشد، باید چنین پیوندی ایجاد کنید، که آدرس آن، به طور کلی، یک نشانک خواهد بود:

< a href ="javascript:alert("I am bookmarklet"); void 0;"> Bookmarklet

به کد جاوا اسکریپتبه دست آمده در آدرس پیوند، باید کلمه javascript: را در مقابل آن اضافه کنید. اگر اسکلروز من را تغییر ندهد، به آن "تعیین شبه پروتکل جاوا اسکریپت" می گویند. یکی دیگر از جزئیات مهم این است که اگر کد شما مقداری مقدار را برگرداند، مرورگر آن را به عنوان آدرسی برای رفتن و خروج از صفحه فعلی در نظر می گیرد. برای جلوگیری از این امر، مقادیر را برنگردانید، یعنی void 0 را به انتهای اسکریپت اضافه کنید. ، یا کل کد را در یک تابع غیرقابل بازگشت ناشناس قرار دهید - (function()(... کد شما می تواند اینجا باشد...))() .

در هر صورت، ایلیا کانتور در یادداشت Bookmarklets و قوانین نوشتن آنها به تفصیل به همه این موضوعات پرداخته است که برای جزئیات به شما ارجاع می دهم.

تنها چیزی که هنوز باید بدانیم این است که همه مرورگرها محدود می کنند حداکثر طولکد بوک مارکلت و همانطور که سرعت کاروان با سرعت کندترین شتر برابر است، همینطور حداکثر اندازهبوک مارکلت متقابل مرورگر برابر با محدودیت اعمال شده توسط IE 6 SP2 است، یعنی 488 کاراکتر.

بنابراین، بعید است بتوانیم منطق پیچیده ای را با کمتر از پانصد کاراکتر کدنویسی کنیم، بنابراین اغلب بوکمارکلت ها به سادگی یک برچسب اسکریپت جدید ایجاد می کنند که کد برنامه قبلاً در آن بارگذاری شده است.

من هم همینطور. در اینجا کد بوکمارکت من به شکلی سازگار با انسان است:

(عملکرد()(
// یک متغیر داخلی جدید a ایجاد کنید (بهتر است در این مورد از شناسه های کوتاه استفاده کنید)
// و بلافاصله شی ما را به شیء پنجره جهانی اضافه می کنیم و داده هایی را در آن می نویسیم که منحصر به فرد هستند
// برای هر کاربر (به هر حال، آنها قبل از اینکه کاربر این نشانک را به خودش اضافه کند توسط سرور برای کاربر ایجاد می شود)
var a = window.allThat = (
شناسه کاربری: "123345456"،
سرور: "http://mysite.com/"،
اسکریپت: document .createElement("اسکریپت")، // تگ اسکریپت را ایجاد و ذخیره کنید،
// که کد برنامه ما را برای ما بارگیری می کند - اگر کاربر روی دکمه "بستن" کلیک کند بعداً آن را حذف خواهیم کرد.
css: document .createElement("link") // مشابه
},
/* به صورت پویا عناصر را به DOM ایجاد و اضافه کنید: */
h = document .getElementsByTagName("head" );
a.css.rel = "stylesheet" ;
a.css.href = a.server + "css/bookmarklet.2.css" ;
h.appendChild(a.css);
a.script.src = a.server + "js/bookmarklet.7.js" ;
h.appendChild(a.script);
h=null ;
})();

* این کد منبع با برجسته‌کننده کد منبع برجسته شده است.

سپس کد خود پنجره مستقیماً بارگذاری می شود. من فکر می کنم ممکن است به خودی خود جالب باشد، بنابراین آن را در اینجا پست می کنم (همه نظرات به زبان انگلیسی هستند، زیرا مشتری آمریکایی است):

در صورت علاقه، اینجا

مطابق سال گذشتهمی توان رشد فوق العاده ای در محبوبیت نشانک های اجتماعی مشاهده کرد. چیست - نشانه گذاری اجتماعی، آنها برای چه هستند؟ بیایید سعی کنیم آن را بفهمیم. نشانک‌های موجود در رایانه شما برای ذخیره پیوندهای صفحاتی که مرتباً از آنها بازدید می‌کنید یا می‌خواهید بعداً بازدید کنید، استفاده می‌شوند. و نشانک های اجتماعی در هارد دیسک رایانه ذخیره نمی شوند، بلکه در سروری در اینترنت ذخیره می شوند.

تمام این کارها برای ذخیره پیوندهای شما در اینترنت توسط خدمات نشانه گذاری اجتماعی. آنها بسیاری از عملکردهای بسیار مفید را برای کاربر انجام می دهند. با این خدمات می توانید:

بوک مارک ها را به صورت آنلاین ذخیره کنید. این به شما این امکان را می دهد که از هر رایانه ای، هر کجا که هستید، به مجموعه نشانک خود دسترسی داشته باشید.

به اشتراک گذاری و مبادله نشانک ها. کافی است به دوستان خود پیوندی به یک صفحه در یک سرویس اجتماعی بدهید و نشانک های شما (که توسط چشمان کنجکاو بسته نشده اند) در مورد علایق و سایت های مورد علاقه شما برای شما صحبت می کنند.

سایت های جدید جالب و افراد همفکر را پیدا کنید. اگر شخصی پیوند مشابه شما را حفظ کرده باشد، شاید این نشان دهنده علاقه مشترک باشد؟ شاید مرور بوکمارک های دیگر یافته های دیگری را برای شما به ارمغان بیاورد.

بوک مارک ها را با برچسب ها سازماندهی کنید. شما به سادگی به هر نشانک چند نشانک اختصاص می دهید کلید واژه هایا عباراتی که دقیق ترین آن را توصیف می کند. بنابراین، می توانید به راحتی و به سرعت هر مرجعی را در مجموعه خود پیدا کنید.

برای افزودن نشانک اجتماعی، باید در هر یک از خدمات ثبت نام کرده باشید. در زیر لیستی از 20 سرویس محبوب را جمع آوری کرده ام. سپس یک فرم ساده را پر کنید، که در آن آدرس صفحه مورد علاقه خود، عنوان، توضیح کوتاهو تگ ها را اختصاص دهید. ساده است - نشانک شما آماده است.

4. Mister-wong.ru

7. Google.com/bookmarks

9. Myscoop.ru - سرویس متوقف شد

13. Myelect.ru - سرویس متوقف شد

14. Ru-marks.net - سرویس متوقف شد

اینترنت اکسپلورر از نسخه 4 امکان افزودن نشانک ها به موارد دلخواه (مورد علاقه) را از طریق یک اسکریپت با استفاده از روش AddFavorite شی پنجره فراهم می کند. خارجی هنگام فراخوانی متد AddFavorite، یک کادر محاوره ای مانند هنگام انتخاب آیتم منو "مورد علاقه -> افزودن به موارد دلخواه..." نمایش داده می شود.

سینتکس متد AddFavorite به صورت زیر است:

external.AddFavorite(sURL[, sTitle])

که در آن پارامتر اجباری sURL رشته ای است حاوی URL نشانک برای افزودن به موارد دلخواه، و پارامتر اختیاری sTitle متن عنوان نشانک را در لیست علاقه مندی ها مشخص می کند. کاربر می تواند تغییر کند متن داده شدهدر کادر محاوره ای "افزودن موارد دلخواه".

متد هیچ مقداری را بر نمی گرداند.

تابع AddFavorite(url, title) ( if (typeof window.external == "object") ( window.external.AddFavorite(url, title); return true; ) else return false; ) ... افزودن به علاقه مندی ها

Gecko (Mozilla/Firefox/Netscape 6+)

Opera 6+

برای شروع، اپرا وسیله ای برای اضافه کردن نشانک ها از یک اسکریپت ارائه نمی دهد، بلکه نیاز دارد که پیوندها با مجموعه ویژگی rel="sidebar" ایجاد شوند، درست همانطور که برای Gecko نشان داده شد. در همان زمان، در نسخه های Opera 6.x، نشانک ها به عنوان یک پانل جداگانه به "Hotlist" اضافه شدند، در حالی که نشانک ها در "نشانک ها" گنجانده نشدند. بر این اساس، صفحه نه در قسمت اصلی پنجره، بلکه در پانل نمایش داده شد (اگرچه "Hotlist" را می توان شناور ساخت و به کل پنجره گسترش داد). اما با شروع Opera 7، نشانک‌ها شروع به اضافه شدن به «نشانک‌ها» کردند و با علامت زدن فیلد «نمایش در پانل» در کادر محاوره‌ای «افزودن نشانک» و در ادامه نوار کناری(و هنگام استفاده از پیوند با rel="کنار"، "نمایش در پانل" به طور پیش فرض بررسی می شود). اگر کاربر از نشانک در نشانک‌ها استفاده کند، صفحه در قسمت اصلی پنجره نمایش داده می‌شود و اگر کاربر از نوار کناری استفاده می‌کند، صفحه در نوار کناری جداگانه ظاهر می‌شود.

همه اش را بگذار کنار هم...

تابع addBookmark(url, title) ( if (!url) url = location.href; if (!title) title = document.title; //Gecko if ((typeof window.sidebar == "object") && (typeof window .sidebar.addPanel == "function")) window.sidebar.addPanel(عنوان، آدرس، "")؛ //IE4+ else if (نوع window.external == "شیء") window.external.AddFavorite(url، عنوان )؛ //Opera7+ else if (window.opera && document.createElement) ( var a = document.createElement("A"); if (!a) false; //IF Opera 6 a.setAttribute("rel", "نوار کناری")؛ a.setAttribute("href",url)؛ a.setAttribute("title",title); a.click(); ) else return false; return true; ) ... صفحه نشانک

نتایج

و ما چه داریم. تابع addBookmark یک نشانک به IE4+، Gecko و Opera7+ اضافه می کند که خوب است. هنگام انتخاب یک نشانک در IE -> Favorites and Opera -> Bookmarks، صفحه در قسمت اصلی پنجره مرورگر نمایش داده می شود، اما در Gecko صفحه در نوار کناری باز می شود - که بد است.