【发布时间】:2014-07-15 12:03:07
【问题描述】:
我最近才开始使用 jQuery Mobile。我遇到了一个我还没有完全解决的问题。
我得到了这个代码。它的作用是触发toggle 两次。一个用于 jQuery,另一个用于 jQuery Mobile(删除对 jQM 的引用时按预期工作)。关于如何避免这种情况与移动设备一起使用的任何想法?添加命名空间...?
var navigation = $main_nav.find("[data-toggle-id='" + target + "']");
navigation.toggle(200, function() {
console.log('toogle');
});
编辑
演示:http://jsfiddle.net/4mpdR/4/
我在这里没有得到相同的行为,但这基本上是我的设置。
编辑2
$(function () {
$(document).on('click', '.nav__toggle', function () {
var $main_nav = $('.main-nav');
var target = $(this).data('target');
var navigation = $main_nav.find("[data-toggle-id='" + target + "']");
navigation.toggle(200, function() {
console.log('toogle');
});
});
});
编辑3
这只是一个<nav>。查看控制台我看到它触发了两次,一次它引用了我的实际 .js 文件,第二次是 VM[编号],删除 jQuery Mobile 会删除 VM。
[nav.main-nav__collapse.clearfix, prevObject: jQuery.fn.jQuery.init[1], context: document, selector: ".main-nav [data-toggle-id='main-nav__collapse']", constructor: function, init: function…]
0: nav.main-nav__collapse.clearfix
context: document
length: 1
prevObject: jQuery.fn.jQuery.init[1]
selector: ".main-nav [data-toggle-id='main-nav__collapse']"
__proto__: Object[0]
【问题讨论】:
-
我认为 JSfiddle 会提供更好的洞察力......你能添加它吗?
-
也许你应该选择
$(navigation).toggle()... -
如果您在小提琴中没有遇到同样的问题,那么您可能已经分配了两次事件。如果你能给出你的全部功能,那我们可以看看……
-
@j809 'navigation' 已经是一个 jQuery 对象了。
-
navigation有多个对象吗?或者它的内容是一个数组?请使用console.log进行导航并告诉您的输出...
标签: javascript jquery html jquery-mobile mobile