Internet explorer IE-7/8,事件目标不工作
我正在开发一个用例,在这个用例中,一旦用户选中/取消选中复选框,就需要采取一些行动 例如: 函数片段:Internet explorer IE-7/8,事件目标不工作,internet-explorer,Internet Explorer,我正在开发一个用例,在这个用例中,一旦用户选中/取消选中复选框,就需要采取一些行动 例如: 函数片段: <script> function toggleAgreement(event) { if(event.target == 'some pre-defined ID') { //do action; } </script> 功能到集合协议(事件){ if(event.target==“某个预定义ID”){ //行动起来; } 问题: 该功能在Firefox/Ch
<script>
function toggleAgreement(event) {
if(event.target == 'some pre-defined ID') {
//do action;
}
</script>
功能到集合协议(事件){
if(event.target==“某个预定义ID”){
//行动起来;
}
问题:
该功能在Firefox/Chrome中运行良好,即使在IE9中也能正常工作。只是在IE-7/8中,它不起作用
观察IE脚本控制台时,这些错误显示在-->bodyOnload上(不是在我触发此特定复选框时)
“对象不支持属性或方法'querySelectorAll'”
iframe.html,第x行字符y
单击此链接时,我会看到以下内容:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type></HEAD>
<BODY></BODY></HTML>
我研究并发现Jquery应该使用的方式是:
“document.querySelectorAll('.className')”
问题是,即使这个问题在IE9中普遍存在,为什么它不抛出上面提到的错误?允许您使用吗?它使处理事件变得更容易(对于早期的IE版本支持,使用1.x版本是必不可少的)。使用jQuery,它非常简单:
$("#myCheckbox").click(function() {
if ($(this).is(":checked")) {
// Do whatever you want
}
});
不再需要使用“事件目标”,在提供的“$(this)”对象中可以使用单击的复选框。但是,如果需要,它是可用的。允许使用吗?它使处理事件变得更容易(对于早期IE版本的支持,使用1.x版本至关重要)。使用jQuery,它与以下内容一样简单:
$("#myCheckbox").click(function() {
if ($(this).is(":checked")) {
// Do whatever you want
}
});
无需再使用“事件目标”,已单击的复选框在提供的“$(此)”对象中可用。但如果需要,它是可用的。event.target与IE不兼容。请改为尝试此选项(它与跨浏览器兼容):
功能到集合协议(事件){
var evt=e | | window.event;//这将为evt分配事件对象
var current=evt.target | | evt.srcmelement;//这将为current分配事件目标
如果(当前=='某些预定义ID'){
//行动起来;
}
}
event.target与IE不兼容。请改用此选项(跨浏览器兼容):
功能到集合协议(事件){
var evt=e | | window.event;//这将为evt分配事件对象
var current=evt.target | | evt.srcmelement;//这将为current分配事件目标
如果(当前=='某些预定义ID'){
//行动起来;
}
}