【问题标题】:Any way to use jQuery mobile widgets independently?有什么方法可以独立使用 jQuery 移动小部件?
【发布时间】:2013-01-07 00:45:29
【问题描述】:

我有一个使用 Twitter Bootstrap 构建的网站,但我想将 jQuery Mobile 的手风琴小部件用于可折叠内容。我使用了他们的download builder 并且只选择了手风琴小部件。我认为问题在于核心 jquery.mobile.js 文件中仍有一些代码与 bootstrap.js 冲突,因为它最终会改变我的链接在导航菜单中的行为。它将每个常规链接视为一个 ajax 请求,这确实与我的应用程序有关。

有没有人使用过 jQuery mobile 和 Bootstrap?有没有办法更改默认设置,以便只操作手风琴小部件?或者该小部件是否有更好的移动友好型替代品?我真诚地感谢我在这方面能得到的任何帮助!

【问题讨论】:

  • 你能创建一个 jsfidlle 或你正在使用的 wat 的测试页面吗?我会尽力提供一些帮助。
  • 抱歉,我应该在不久前添加我的解决方案。禁用链接的 ajax 使应用程序正常运行。

标签: jquery-mobile twitter-bootstrap


【解决方案1】:

我应该在不久前更新这个。要禁用 ajax,请运行:

$.mobile.ajaxLinksEnabled = false;

这将导致所有链接都被视为普通锚点,使其与 Bootstrap 兼容。

【讨论】:

  • 这对我不起作用。我得到Uncaught TypeError: Cannot set property 'ajaxLinksEnabled' of undefined。我试图在加载 jQuery Mobile 后设置它。搜索“ajaxLinksEnabled”,它不会出现在我正在使用的 jQuery Mobile 版本(v1.4.2)的任何地方。
  • 另外,我尝试过$(document).bind("mobileinit", function(){ $.extend( $.mobile , { linkBindingEnabled: false, ajaxEnabled: false }); });,但这也不起作用。 jQuery Mobile 仍在处理页面上的任何链接,并且如果我将哈希更改为 /the/page#some-hash,它会自动将页面重定向到 /the/page/some -哈希。
  • 您正在使用 jquery 注册事件,但它会在初始化时被 jqm 调用。所以代码应该放在jquery include和jqm include之间。按照您的操作方式,当您注册事件时,它已经被分派了。
  • 我应该在第二条评论中明确指定,但我在 jQuery 之后但在 JQM 之前注册了该事件侦听器。我在关于“加载 jQuery Mobile 之后”的第一条评论中所说的只是将 $.mobile.ajaxLinksEnabled 直接设置为 false。
  • 您的代码与此有何不同? jsfiddle.net/senormoll/v67re1g7/1 1.4.2 对我来说似乎可以正常工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-11-17
  • 1970-01-01
  • 2015-01-10
  • 1970-01-01
  • 2017-12-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多