Javascript jQuery Mobile是否在某些标记上禁用增强功能?
我不想要Javascript jQuery Mobile是否在某些标记上禁用增强功能?,javascript,jquery,html,css,jquery-mobile,Javascript,Jquery,Html,Css,Jquery Mobile,我不想要的样式,但我不想将数据增强=false添加到我拥有的每个锚点。我还希望linkBindingEnabled能够工作(从),因为它不会向标记添加自定义类 我可以删除CSS文件中的定义,但我更喜欢用编程的方式。例如,我注释掉了.ui-body-c.ui-link(默认链接),但是页脚中的链接仍然得到了增强。我确信还有其他的小案例,我不想把它弄得一团糟(尽管有时这是唯一的选择) 基本上,有没有一种方法可以禁用元素“选择器”的增强功能?除了手动添加data enhance=false之外,在jQ
的样式,但我不想将数据增强=false
添加到我拥有的每个锚点。我还希望linkBindingEnabled
能够工作(从),因为它不会向
标记添加自定义类
我可以删除CSS文件中的定义,但我更喜欢用编程的方式。例如,我注释掉了.ui-body-c.ui-link
(默认链接),但是页脚中的链接仍然得到了增强。我确信还有其他的小案例,我不想把它弄得一团糟(尽管有时这是唯一的选择)
基本上,有没有一种方法可以禁用元素“选择器”的增强功能?除了手动添加data enhance=false
之外,在jQuery Mobile
中禁用标记增强的方法很少,但在您的情况下,只有一种单行解决方案:
$(document).on('pagebeforeshow', '#index', function(){
$('a').removeClass('ui-link');
});
jsFiddle
示例:
其他解决方案可以在我的其他中找到,为了透明起见,这是我的个人博客。或者找到它。搜索名为:标记增强预防方法的章节
在这里,您将找到如何在选择器级别禁用它的答案,不幸的是,它只适用于本机表单元素,标记不是本机表单元素:
$(document).bind('mobileinit',function(){
$.mobile.page.prototype.options.keepNative = "select, input";
});
要禁用选定组件的增强功能,可以添加在jQuery Mobile 1.4.2上测试的data role='none'
请参见谢谢-这很有效。但是,我没有使用页面,(我只有$(document).on('pagebeforeshow',function(){
),所以我对它的工作原理有点困惑(因为我没有指定要加载的页面,尽管我认为JQM会自动创建页面)。你知道任何链接吗?我们可以解释,事件的调用顺序吗?就像我加载新页面时的完整时间线一样。是的,我有另一个答案/文章:如果一个页面上有100多个组件怎么办?你打算将其添加到每一个组件中吗?这正是我想要的,谢谢。还与jQuery Mob一起工作第1.3.2条