如何使用$(this).e.preventDefault()?
我想/需要的是在窗口上调整<a>的大小,它的行为应该有所不同。因此,就像在小提琴示例中,如果窗口宽度小于710,则不应该触发href。只会有一些JavaScript函数切换subnav。但是,如果窗口大于710 to,我希望href“正常”工作。
现在,通过设置这个示例,我看到了这个事件正在多次触发。如果只有一次火灾,我怎么能做到呢?
还有什么更好的方法来实现我想要的呢?
请在点击前调整弹琴窗口的大小!小提琴在这里
$( window ).resize(function() {
var wW = $(window).width();
$('.windowWidth span').html(wW);
if(wW < 710) {
$('nav ul.nav > li > a').on('click',function(e){
e.preventDefault();
alert("here");
});
} else {
$('nav ul.nav > li > a').on('click',function(e){
alert("there");
});
}
});发布于 2014-04-14 09:24:42
您需要检查单击处理程序中的窗口宽度,而不是在窗口调整大小处理程序中设置单击处理程序。试试这个:
$('nav ul.nav > li > a').on('click',function(e){
if ($(window).width() < 710) {
e.preventDefault();
}
alert("there");
});当前方法将无法工作,因为最终会多次将相同的单击处理程序分配给相同的元素。
发布于 2014-04-14 09:22:08
如何使用$(this).e.preventDefault()?
您不能这样做,因为.preventDefault()是event属性的函数。
但是,您可以检查e.target.id (为您提供触发事件的元素id ),然后查看相应的操作
https://stackoverflow.com/questions/23056369
复制相似问题