我在Jquery Mobile中处理多列布局。
当用户打开多列页面时,我想要禁用JQM ajaxlinks导航(并切换到“人工导航和历史记录”。所以基本上我试图绑定到一个类名=“的链接或列表项” ui-hash-blocked“。当用户离开页面时,我正在重新打开ajaxlinks。
我喜欢这个想法,但无法使这段代码正常工作(错误:$ .mobile'[undefined])
$('.ui-hash-block').click(function ()
{
$.mobile.ajaxLinksEnabled = false;
});
语法有什么问题吗?
我知道在启动JQM之前调用$ .mobile会出现错误,但由于我在单击链接/列表项时只调用此函数,因此JQM应该已经启动。
感谢您的帮助&圣诞快乐!
频繁
PS:如果您需要更多代码,我可以举一个例子。
答案 0 :(得分:18)
如果您只想在某些链接上使用此行为,请在链接中添加data-ajax="false"
答案 1 :(得分:2)
$(document).bind("mobileinit", function(){
//Disable ajax link
$('.disable-ajax').click(function(event){
$.mobile.ajaxFormsEnabled = false;
});
});
答案 2 :(得分:0)
这个$ .mobile。*是一堆很早就使用的配置选项。这就是他们在初始化时显示here的原因。此设置是全局设置。
你要做的就是hacky。但我相信你可以在正确的时刻改变设置,这应该是其中之一:
- 在您的示例中尝试点击mousedown事件
在项目被JQM拉伸之前:
$ .mobile.ajaxLinksEnabled = false;
$( 'theNEWelement')appendTo( '地方')网页();
$ .mobile.ajaxLinksEnabled = false;
对结果进行评论,我将编辑以标记哪一个有效。我现在无法测试它。