JS как проверить, была ли веб-страница добавлена в качестве домашней страницы?

#javascript #set

#javascript #установить

Вопрос:

Я пытаюсь создать что-то похожее на Google в IE. Они создают скрипт «Сделать Google вашей домашней страницей» для IE.

Это то, что у меня есть на данный момент:

   <script type="text/javascript">
$(document).ready(function () {
$("#no_thanks").click(function () {
$(".lightbar").hide();
}); });
</script> 

<!--[if IE]>
<div class="lightbar">Come here often? Make xxx your homepage.
<span class="sure"><a href="#" onClick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.xxx.com');_gaq.push(['_trackEvent', 'HomePage', 'Sure', 'Set as Home page']);">Sure!</a></span>
<span class="nothanks"><a id="no_thanks" href="#" onClick="_gaq.push(['_trackEvent', 'HomePage', 'No', 'Set as Home page']);">No Thanks</a></span>
</div>
<![endif]-->
  

Я также добавил немного Google Analytics.

Что происходит, так это то, что скрипт работает, он устанавливает домашнюю страницу, но "lightbar" не исчезает при перезапуске браузера (я не говорю о скрипте jQuery).

Есть идеи?

Комментарии:

1. Похоже, вы скрываете это только тогда, когда они нажимают на #no_thanks. Я не вижу, где вы пытаетесь это скрыть, когда они нажимают «Конечно!»

2. конечно, но если я перезапущу веб-браузер, даже если для веб-страницы была установлена моя веб-страница, «лайтбокс» все равно будет отображаться

Ответ №1:

Имхо, надежного способа нет.

лучшее, что вы могли бы сделать, это добавить строку запроса к URL, который находится под ссылкой добавить как домашнюю страницу. Нравится:

 www.example.com/homepage.html?isbookmark=true
  

или

 www.example.com/homepage.html?ishomepage=true
  

затем просто проверьте, существует ли строка запроса в URL при вызове документа. Затем она запускается с помощью этой кнопки, или закладки, или домашней страницы.

Комментарии:

1. Это не привлечет людей, которые напрямую добавят ваш сайт в закладки, а не воспользуются вашей ссылкой. В целом, любой способ, которым вы это сделаете, будет иметь некоторые недостатки, поскольку браузеры на самом деле не имеют доступа для получения такого рода информации.

2. @robert действительно, мой ответ — всего лишь попытка

3. Верно, это было не для вас, ваш способ — хороший способ, но нет полностью правильного ответа