.on eventlistener 适用于 Firefox,但不适用于 IE 或 chrome
.on eventlistener works for firefox but not on IE or chrome
让我直接进入这个,我在html中有一堆控件,它们是:
var vup = 'mouseup';
$(document.body).on(vup, '.control_but', function(e)
{
console.log(e.currentTarget.id);
switch(e.currentTarget.id)
{
case 'pause_but':
uiObj['player'].performAction('pause');
break;
case 'play_but':
uiObj['player'].performAction('play');
break;
case 'prev_but':
uiObj['player'].performAction('previous');
break;
case 'next_but':
uiObj['player'].performAction('next');
break;
case 'repeat_but':
case 'repeatAll_but':
uiObj['player'].performAction('repeat');
break;
case 'shuffle_but':
uiObj['player'].performAction('shuffle');
break;
default:
break;
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="controls_div">
<img id="prev_but" class="control_but" src="media/prev.svg" alt="previous">
<img id="play_but" class="control_but" src="media/play.svg" alt="play">
<img id="pause_but" class="control_but hide" src="media/pause.svg" alt="play">
<img id="next_but" class="control_but" src="media/next.svg" alt="next">
<img id="repeat_but" class="control_but" src="media/repeat.svg" alt="repeat">
<img id="repeatAll_but" class="control_but hide active_but" src="media/repeatAll.svg" alt="repeatAll">
<img id="shuffle_but" class="control_but" src="media/shuffle.svg" alt="shuffle">
</div>
我像这样为它们分配了鼠标向上事件侦听器:
var vup = 'mouseup';
这在Mozilla Firefox中完美运行,但似乎不适用于chrome或IE。我似乎不知道为什么。
提前致谢
尝试:
var vup = 'mouseup';
$(document).on(vup, '.control_but', function(e)
{
// rest of your code...
});
var vup = 'mouseup';
$(document).on(vup, '.control_but', function(e)
{
console.log(e.currentTarget.id);
switch(e.currentTarget.id)
{
case 'pause_but':
alert('pause_but');// only to show you
uiObj['player'].performAction('pause');
break;
case 'play_but':
alert('play_but');// only to show you
uiObj['player'].performAction('play');
break;
case 'prev_but':
alert('prev_but');// only to show you
uiObj['player'].performAction('previous');
break;
case 'next_but':
uiObj['player'].performAction('next');
break;
case 'repeat_but':
case 'repeatAll_but':
uiObj['player'].performAction('repeat');
break;
case 'shuffle_but':
uiObj['player'].performAction('shuffle');
break;
default:
break;
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="controls_div">
<img id="prev_but" class="control_but" src="media/prev.svg" alt="previous">
<img id="play_but" class="control_but" src="media/play.svg" alt="play">
<img id="pause_but" class="control_but hide" src="media/pause.svg" alt="play">
<img id="next_but" class="control_but" src="media/next.svg" alt="next">
<img id="repeat_but" class="control_but" src="media/repeat.svg" alt="repeat">
<img id="repeatAll_but" class="control_but hide active_but" src="media/repeatAll.svg" alt="repeatAll">
<img id="shuffle_but" class="control_but" src="media/shuffle.svg" alt="shuffle">
</div>
大家好,我找到了解决方案
似乎占位符,即变量名称 vup 在 chrome 和 IE 中没有被读取为鼠标向上。我不知道为什么,但是当我将事件列表更改为
$(document).on('mouseup', '.control_but', function(e)
{
// rest of your code...
});
它似乎有效。
谢谢
相关文章:
- AngularJS$http.post没有'不适用于Chrome,仅适用于IE
- 如何调试遗留的javascript代码(适用于IE,但在Google Chrome中不正常)
- js不适用于Chrome,但适用于IE
- (PHP&JavaScript)a href添加按钮赢得'我不适用于Mozilla,但适用于IE和谷歌
- javascript代码适用于IE和Chrome,但不适用于Firefox
- html5 canvas 中的 OffsetX 适用于 IE、Safari、Chrome,但不适用于 Firefox
- .load() 适用于 IE 和 dreamweaver 预览版,但不能使用 opera 和 chrome
- IE 9 Javascript Window Variable 为 null.适用于IE 8
- Javascript / CSS不适用于IE 10,但适用于IE 8
- html 选择列表更改无法在谷歌浏览器上调用方法(适用于 IE)
- 此代码阻止我的表单提交(仅在 chrome 中,适用于 IE 和 Firefox)
- Jquery适用于IE以外的所有浏览器
- Fotorama - 适用于IE,Firefox,但不适用于Chrome(上传到服务器)
- JavaScript适用于IE,但不适用于Firefox和Chrome
- javascript 函数 - 传递给函数的变量适用于IE,但不适用于Firefox
- HTTPRequest to Node 服务器适用于 IE 8,但不适用于 IE 7
- Javascript window.print 适用于 IE 和 FF,但不适用于 Chrome(在旧版本中曾经如此)
- 两个几乎相等的jQuery函数;一个适用于IE,一个不适用于IE
- 寻找适用于IE的开发人员插件
- Firefox 中的 HTML 位置问题(适用于 IE 和 Chrome)