【发布时间】:2015-08-07 22:39:48
【问题描述】:
我正在使用 jasny bootstrap offcanvas 导航栏 (http://jasny.github.io/bootstrap/components/#navmenu-offcanvas),只要页面上其他地方发生点击事件,它就会关闭。但是,我们有一个 Twitter 提要已被修改为在 3 个不同的 Twitter 帐户之间移动。为了在它们之间切换,触发点击。这导致每次推文切换时导航菜单都会关闭,我似乎无法阻止它。
这是推特滚动代码:
var tabCarousel = setInterval(function() {
var tabs = $('#twittertab > li'),
active = tabs.filter('.active'),
nextone = active.next('li'),
toClick = nextone.length ? nextone.find('a') : tabs.eq(0).find('a');
toClick.trigger('click');
}, 5000)
我尝试将preventDefault() 和stopPropagation() 应用于trigger('click'),但我对jQuery 非常缺乏经验,我真的只是在猜测将其放在哪里。
【问题讨论】:
-
发布相关的
click处理程序 -
抱歉,不确定您的意思,我对 jquery 非常缺乏经验,我只是想在同事不在时为他解决问题
-
这个
toClick.trigger('click');调用了一个使用jQuery 绑定的处理程序,你可以发布它吗?因为更好的方法是调用处理函数,而不是触发点击事件。现在,如果这是由外部插件设置的,这可能会更复杂。您最好提供一个简单的示例来复制您的问题,例如使用 jsFiddle -
我只是忘记了,但你应该尝试改用:
toClick.triggerHandler('click');这不会让事件通过 DOM 传播 -
感谢 A. Wolff 的建议。抱歉浪费您的时间,我假设 jasny navbar 上的 autohide 属性定义了默认情况下导航栏是否展开或折叠。事实上,它会阻止在导航栏本身之外单击关闭导航栏,这正是我所需要的(因为我在导航栏本身有一个关闭按钮)。感谢您的帮助
标签: javascript jquery css twitter-bootstrap jasny-bootstrap