如果在窗口大小更改时切换hover
和click
function checkWidth() {
var windowsize = $window.width();
if (windowsize > 480) {
$('#clickPoint').on('click', function(){
......//code
});
}else {
$('#clickPoint').on('hover',function(){
......//code
});
}
}();
$(window).resize(checkWidth);
但是我发现悬停总是打开,所以我不得不改变这种方式
var windowsize = $window.width();
if (windowsize > 480) {
$('#clickPoint').on('click', function(){
......//code
});
}else {
$('#clickPoint').off('click', function(){
......//code
});
$('#clickPoint').on('hover',function(){
......//code
});
}
}();
但如果有人有更好的解决方案,仍然无法正常工作?谢谢
答案 0 :(得分:1)
仔细查看$window.width()
。我怀疑。尝试将其更改为$(window).width()
。更改您在顶部提供的代码。因为底部的代码看起来搞砸了。
还要确保使用警报或日志检查窗口宽度。只是为了确保if语句正常工作。
答案 1 :(得分:0)
尝试这样
var permit=2;
$('#clickPoint').on('click', function(){
if(permit==0)
{
......//code
}
});
$('#clickPoint').on('hover',function(){
if(permit==1)
{
......//code
}
});
function checkWidth() {
var windowsize = $(window).width();
if (windowsize > 480) {
permit=0;
}else {
permit=1;
}
}
$(window).resize(checkWidth);