2012-03-29 2 views
0

У меня есть код, который необходим для моего сайта, и он работает в каждом браузере, но, похоже, дважды запускается в Chrome. Он запускается дважды, когда я обновляю страницу, но не тогда, когда я использую ajax/jquery для загрузки содержимого в главный div на моей странице. Однако он отлично работает в любом другом браузере и не срабатывает дважды. Вот мой код:Функция загрузки JQuery дважды в Chrome

<script type='text/javascript'> 
$("a").live('click', function(){ 
history.pushState({}, '', this.href); 
popstate(this.href); 
return false; 
}); 
$(window).load(function(){ 
window.onpopstate = function(event){ 
popstate(window.location.href); 
event.preventDefault(); 
} 
popstate = function(url){ 
url = '/ajaxlinks/ajaxlink'+window.location.pathname.substr(1); 
if (url == '/ajaxlinks/ajaxlink'){url = '/ajaxlinks/ajaxlinkindex.php'} 
if (url.indexOf(".php") == -1){url = '/ajaxlinks/ajaxlinkprofile.php'} 
if (url == '/ajaxlinks/ajaxlinkaccountrecovery.php'){window.location = 'http://www.pearlsquirrel.com/accountrecovery.php';} 
if (url == '/ajaxlinks/ajaxlinklogin.php'){window.location = 'http://www.pearlsquirrel.com/login.php';} 
if (url == '/ajaxlinks/ajaxlinklogout.php'){window.location = 'http://www.pearlsquirrel.com/logout.php';} 
$('#ajaxloadcontent').load(url); 
$('html, body').animate({scrollTop:0}, 'fast'); 
} 
}); 
</script> 

Если кто знает, как это исправить, я был бы очень признателен за помощь. Благодаря!

+0

Какая часть кода срабатывает дважды? Весь скрипт или конкретная функция? – mellamokb

+0

Это была начальная загрузка страницы, но теперь она исправлена, спасибо за помощь. – Eggo

ответ

1

Вы всегда должны указывать код jQuery в встроенном «готовом» блоке jQuery.

$(function(){ 
    //all code here 
}); 

Эта операция обрабатывает соответствующие «готовые» события автоматически.

Смежные вопросы