Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery mobile jQuery移动转换冲突jQuery?_Jquery Mobile_Jquery_Conflict_Document Ready - Fatal编程技术网

Jquery mobile jQuery移动转换冲突jQuery?

Jquery mobile jQuery移动转换冲突jQuery?,jquery-mobile,jquery,conflict,document-ready,Jquery Mobile,Jquery,Conflict,Document Ready,我目前在一个网站上工作: 现在,当我点击商业或住宅按钮时,它工作正常,但当你进入服务页面时,jQuery中的“切换”就不起作用了——实际上所有jQuery脚本都停止工作了(主页上的滑块也是如此) 若页面确实被重新加载,那个么在用户转到另一个链接之前,一切都是好的,然后一切都会中断。这与我正在使用的(document.ready)函数有关吗(您可以在标题中看到) 如何防止这种冲突,或者如何在通过导航链接访问时强制jQuery切换到所有页面 谢谢您的问题是您正在使用document.ready为通

我目前在一个网站上工作:

现在,当我点击商业或住宅按钮时,它工作正常,但当你进入服务页面时,jQuery中的“切换”就不起作用了——实际上所有jQuery脚本都停止工作了(主页上的滑块也是如此)

若页面确实被重新加载,那个么在用户转到另一个链接之前,一切都是好的,然后一切都会中断。这与我正在使用的(document.ready)函数有关吗(您可以在标题中看到)

如何防止这种冲突,或者如何在通过导航链接访问时强制jQuery切换到所有页面


谢谢

您的问题是您正在使用
document.ready
为通过AJAX引入DOM的页面运行代码。这意味着,如果要为添加到DOM的每个页面绑定事件,则应使用
pageinit
pagecreate

更改:

$(function(){
    var sidebar = $('.hor-nav');
    sidebar.delegate('a.inactive','click',function(){
        sidebar.find('.active').toggleClass('active inactive');
        $(this).toggleClass('active inactive');
    });
});
致:

这将对始终存在于DOM中的元素(
文档
)使用事件委派,而
.hor nav
元素如果是外部页面的一部分,则并不总是存在于DOM中


看起来您还有其他代码依赖于
document.ready
事件,jQuery移动网站不应如此。查看此文档:(注意黄色的大警告)

您的问题是您正在使用
document.ready
为通过AJAX引入DOM的页面运行代码。这意味着,如果要为添加到DOM的每个页面绑定事件,则应使用
pageinit
pagecreate

更改:

$(function(){
    var sidebar = $('.hor-nav');
    sidebar.delegate('a.inactive','click',function(){
        sidebar.find('.active').toggleClass('active inactive');
        $(this).toggleClass('active inactive');
    });
});
致:

这将对始终存在于DOM中的元素(
文档
)使用事件委派,而
.hor nav
元素如果是外部页面的一部分,则并不总是存在于DOM中


看起来您还有其他代码依赖于
document.ready
事件,jQuery移动网站不应如此。查看此文档:(注意黄色大警告)

您是否尝试过使用
jQuery
而不是
$
?不太清楚您的意思?
$
jQuery
的别名,如果您在脚本中将$更改为jQuery,它应该不再冲突,如果这确实是原因。尝试了它,但它不起作用…:(…所以它现在运行jQuery脚本肯定还有其他原因:(我知道您使用的是jQuery Mobile 1.1.0,它最多只支持jQuery Core 1.7.1。这可能不是您的问题,但您可能希望更改核心文件。您是否尝试过使用
jQuery
而不是
$
?不太清楚您的意思?
$
jQuery
的别名,如果您在scr中将$更改为jQuery)ipt,如果这确实是原因的话,它应该不再冲突。尝试过它,但它不起作用…:(…所以它现在运行jQuery脚本肯定还有其他原因:(我知道您使用的是jQuery Mobile 1.1.0,它最多只支持jQuery Core 1.7.1。这可能不是您的问题,但您可能需要更改核心文件。事实上……我已将所有代码从documentready中移出,因此现在可以工作了!非常感谢您的帮助!实际上现在还有一件奇怪的事情。如果您转到页面:并单击商业it确实应用类活动,但当您单击返回到住宅时-它正在切换类?知道为什么吗?
a.inactive
选择器应更新为
a
,以便所有链接都绑定到。我已更新我的响应以反映这一点。
a.inactive
选择仅绑定到当前的ina活动链接,而不是所有链接。你可以通过访问网站的任何部分并单击非活动链接来测试这一事实,然后再次单击第一个链接,注意类没有改变。事实上……我已经将所有代码从documentready中移出,所以现在它可以工作了!非常感谢帮助!实际上现在还有另一件奇怪的事情。如果你不这样做的话o页面:点击商业,它确实应用类活动,但当你点击返回到住宅-它正在切换类?你知道为什么吗?
a.inactive
选择器应该更新为
a
,以便所有链接都被绑定。我已经更新了我的响应以反映这一点。
a.inactive
选择仅限于绑定到当前非活动链接,而不是所有链接。您可以通过转到站点的任何部分并单击非活动链接,然后再次单击第一个链接来测试这一事实,请注意,类没有更改。