我剛剛開始使用jQuery Mobile。我遇到了一個我還沒有完成的問題。jQuery切換和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/
我沒有在這裏得到相同的行爲,但是這基本上是我的設置。
EDIT2
$(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');
});
});
});
EDIT3
這只是一個<nav>
。看在控制檯我看到它觸發兩次,有一次它有我的實際.js文件的引用,第二個是VM [號碼],刪除jQuery Mobile消除虛擬機。
[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會提供更好的洞察力......您可以添加它嗎? – j809
也許你應該用'$(navigation).toggle()'... – j809
如果你在小提琴中沒有得到相同的問題,那麼你可能已經分配了兩次事件。如果你可以給你的整個功能,那麼我們可以看看它... – j809