<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>IE6用setAttribute添加事件无效</title>
<style type="text/css">
* {margin:0;padding:0;margin:0 auto;}
#div1{width:200px; height:200px;background:#F03;}
</style>
</head>
<body>
<div id="div1"></div>
<script type="text/javascript">
function method(){
alert(1);
}
var ids = "div1";
document.getElementById(ids).setAttribute("onclick","method()");
//document.getElementById(ids).setAttribute("onclick",method); //无效
</script>
</body>
</html>
在IE6 下无法响应该事件
IE7+、chorome、Firefox 条件下正常,会响应onclick事件!
分享到:
相关推荐
例如,`el.setAttribute('class', 'abc')`在标准浏览器中会为元素添加类名"abc",但在IE6和IE7中,这个样式可能不会生效,尽管使用`el.getAttribute('class')`确实能够获取到"abc"这个值。这意味着,虽然表面上看像...
在标准模式下,IE8及以下版本不支持通过`setAttribute`直接为元素添加事件监听器,这与现代浏览器如Chrome和Firefox存在差异。为了确保兼容性,通常推荐使用`addEventListener`方法为元素添加事件监听器,但由于IE8...
综上所述,JavaScript动态添加事件涉及到多种技术,包括`setAttribute`、`attachEvent`、`addEventListener`,以及针对不同浏览器的兼容性策略。在实际开发中,应根据项目需求和浏览器支持情况选择合适的方法。
本文将详细讨论一个特定的问题,即在IE6/7中使用JavaScript的setAttribute方法设置table的cellpadding和cellspacing属性时出现的bug。 首先,我们需要了解`cellpadding`和`cellspacing`属性。这两个属性是HTML中...
总之,在JavaScript中动态添加事件需要考虑浏览器兼容性,通常需要结合使用`setAttribute`、`attachEvent`、`addEventListener`等方法,并根据浏览器特性进行适配。同时,尽量避免使用`eval`,以提高代码的安全性和...
但需要注意的是,`setAttribute`在Internet Explorer浏览器中对于某些属性(如对象属性、集合属性和事件属性)的支持有限,包括`style`、`onclick`、`onmouseover`等,因此在IE中使用这种方法可能无法正常工作。...
这主要是因为IE6使用了名为“AlphaImageLoader”的滤镜来尝试处理透明PNG,但结果并不理想。 3. **JavaScript解决方案**:一种常见的解决方法是使用JavaScript库,例如本案例中的`pngInIE6.js`或其压缩版本`pngInIE...
1. **class属性**:在IE6和IE7中,使用`setAttribute()`设置class属性时,可能不会生效。 2. **for属性**:在IE6和IE7中,`for`属性可能需要通过`setAttribute()`设置为`htmlFor`。 3. **cellspacing和cellpadding**...
当我们使用 setAttribute("class","red") 时,IE 浏览器会将自定义的 class 添加到系统的 class 中,从而导致元素上显示两个 class 属性。 在实际开发中,我们需要根据不同的浏览器环境选择合适的方法来设置 class ...
这里通过使用字符串拼接的方式,将`double`类型的`result`转换为了字符串类型,从而解决了类型不匹配的问题。 #### 进一步分析 除了上述解决方案外,我们还需要进一步检查代码中是否存在其他潜在的问题。例如,`...
- **设置点击事件**: 在绑定事件处理程序时,Firefox支持直接使用`element.onclick = function() {...}`的形式,而IE需要通过`setAttribute`来实现。 - Firefox中可以直接使用`obj.onclick = function(){func();}`...
不过,需要注意的是,IE并不支持使用`setAttribute()`来设置某些特定属性,特别是对象属性、集合属性和事件属性,如`style`和`onclick`。在这种情况下,我们应该使用点符号法(dot notation)来代替: ```...
在非IE浏览器中,你可以使用它来设置事件处理程序,如: ```javascript var obj = document.getElementById("obj"); obj.setAttribute("onclick", "javascript:alert('测试');"); ``` 但在IE浏览器中,尤其是...
具体来说,在早期的Internet Explorer(IE)浏览器中,直接使用`setAttribute`方法来设置`onclick`事件监听器可能会不起作用,而相同的代码在Firefox等其他浏览器中却可以正常工作。这是因为不同浏览器对`...
2. 添加属性和事件:创建元素后,可以使用`element.setAttribute('name', 'dynamicInput')`来设置其他属性,如name。同时,还可以为元素添加事件监听器,比如`element.addEventListener('keyup', function() {...})`...
本文将详细讲解如何实现SVG元素的移动、缩放和拖动添加功能,以及如何添加相关的鼠标事件。 一、SVG移动 SVG元素的移动可以通过改变其`transform`属性中的`translate()`函数来实现。`translate(x, y)`函数可以将...