2016-06-27 1 views
2

У меня есть пользовательская домашняя страница, которая загружается при открытии новой вкладки в Firefox. Я хочу переместить курсор на загрузку, но я не могу найти событие, которое будет обрабатывать это при загрузке вкладки.Как использовать событие DOM HTML для загрузки новой вкладки?

События window.onpageshow и window.onload не работают, когда страница загружается из нового события вкладки, но отлично работает при обновлении или аналогичном. Бросив событие с элементом не имеет никакого влияния ни, такие как:

<body onload="blah()"> 

Есть ли способ вызвать мою курсор функцию репозиции при загрузке страницы в этой манере? Edit: Вот код SetCursor

<script type="text/javascript"> 
window.onload = ready; 
function ready() 
{ 
    setCursor(document.getElementById('sbar'), 0, 0) 
}; 
</script> 


<script type="text/javascript"> 
function setCursor(el, st, end) 
{ 
    if (el.setSelectionRange) { 
     el.focus(); 
     el.setSelectionRange(st, end); 
    } else { 
     if (el.createTextRange) { 
      range = el.createTextRange(); 
      range.collapse(true); 
      range.moveEnd('character', end); 
      range.moveStart('character', st); 
      range.select(); 
     } 
    } 
}; 
</script> 
+0

Я боюсь, что нет никакой разницы между окном нагрузки и новой вкладки нагрузки для веб-браузера. Если вы настаиваете на загрузке только с вашего сайта, возможно, что-то может помочь HTTP-заголовок 'referer'. Но 'referer' находится на стороне сервера, а не на javascript. – rufushuang

ответ

1

У вас есть несколько вариантов, если вы хотите подключить загрузку страницы (вкладка нагрузки):

Первый вариант заключается в использовании onload событие:

window.onload = ready; 
function ready() 
{ 
    alert("Hi !"); 
}; 

Демонстрация:http://jsfiddle.net/vy79v39k/

Второй вариант заключается в размещении y наш Javascript в самом конце тела:

<body> 
    ... 
    <script type="text/javascript"> 
    ready(); 
    </script> 
</body> 

Третий вариант заключается в использовании jQuery (который я голосую за!):

jQuery(function($) { 
    //Your code here 
}); 

Или:

jQuery(document).ready(function($) { 
    //Your code here 
}); 
+0

Спасибо! К сожалению, у меня все еще есть проблемы. Диалоговое окно предупреждения отлично работает на новой вкладке, но мой сценарий перемещения курсора по-прежнему не работает при загрузке. Интересно, что он отлично работает, если я включаю предупреждение в тот же вызов функции onload - любая идея, что происходит? Код находится в конце тела, функция setCursor, завернутая в теги скриптов. Не удалось получить разные результаты с помощью jQuery. Еще раз спасибо! +1, но новый участник = noshow. – redteamwynns

+0

Не могли бы вы добавить код функции 'setCursor'! –

+0

Я просто загрузил код. Спасибо. – redteamwynns