好久没有用Ajax了!今天复习了下~在做一个练习的时候,发现了一个问题:看下面代码~~
-
function createDiv(htm)
{
var myItemDiv = document.createElement("div");
var myContentDiv = document.createElement("div");
myItemDiv.setAttribute("class","item");
myContentDiv.innerHTML = htm;
myItemDiv.appendChild(myContentDiv);
var temp = document.getElementById("allContent");
var bef = temp.firstChild;
temp.insertBefore(myItemDiv,bef);
}
这段代码在FireFox IE8下都没有问题,但是在IE7中,
myItemDiv.setAttribute("class","item")这句会出现问题,具体表现为:class属性会无法正确的确定!
然后通过多次试验,发现IE7下setAttribute()不能正确的设置由createElement()创建的容器,具体原因不知道~~~,不过肯定是MS没有遵守W3C的问题~
郁闷了,想下貌似以前做Ajax开发的时候没有碰到这个问题,这是怎么回事呢?
回翻下以前的代码去
终于,在以前用AJAX写的一个留言板中发现了解决问题的方法:要解决这个问题,使用下面的语句
myItemDiv.className = "item";
恩,看来上期魔兽世界让我荒废的太多了,很多都不记得了,以后多努力,UP UP
恩,修改下!是IE7下setAttribute()不能正确的设置容器的class的属性~~~
而不是setAttribute()不能正确的设置由createElement()创建的容器
分享到:
相关推荐
JavaScript提供了多种方法来创建和操作DOM元素,其中`createElement`是最基础且强大的API之一。本文将详细介绍JavaScript中利用`createElement`创建DOM元素的两种常见方式,并探讨它们之间的区别与应用场景。 #### ...
最近在做一个文件下载的功能,这里把做的过程中用的技术和坑简要总结下。 1. 单文件下载(a标签) 同源单文件 针对单文件的情况下,同源的文件,可以通过 < a> 标签的 download 属性下载文件 const elt = ...
setAttribute(string name, string value):增加一个指定名称和值的新属性,或者把一个现有的属性设定为指定的值。1、样式问题setAttribute(“class”, value)中class是指改变”class”这个属性,所以要带引号。...
使用document.createElement:let el = document.createElement(“ div”)el.className =“包装器” let输入= document.createElement(“ input”)input.setAttribute(“ type”,“ text”)let button = ...
关于`appendChild()`和`insertBefore()`的区别,一个直观的例子是,如果有一个包含两个子节点的`<div>`,并且你想在第一个子节点前插入新的子节点。使用`appendChild()`会将新节点添加到末尾,而使用`insertBefore()...
3. 使用`setAttribute`方法来设置属性,即使它们在`createElement`之后设置,以确保一致性。 例如,创建一个复选框的正确方式: ```javascript var echkbox = document.createElement("input"); echkbox....
对于Firefox,代码则使用`createElement`创建元素,并使用`setAttribute`方法添加属性和事件,如下: ```javascript else if ($.browser.mozilla) { var el = document.createElement("span"); el.setAttribute(...
本文将介绍 `createElement` 方法的两种不同创建方式,这两种方式各有其特点和适用场景。 第一种创建方式是直接创建 HTML 元素并进行相关设置。在给定的代码示例中,`CreateButton1` 函数演示了这种创建方式。首先...
例如,`el.setAttribute('class', 'abc')`在标准浏览器中会为元素添加类名"abc",但在IE6和IE7中,这个样式可能不会生效,尽管使用`el.getAttribute('class')`确实能够获取到"abc"这个值。这意味着,虽然表面上看像...
iframe 的name可以是link或者...//iframe.setAttribute('name', 'ifr'); //这样也不行 上面两种方式都无法设置。后来找到原来也可以这样创建 JavaScript代码 var iframe = document.createElement(‘<iframe name
综上所述,通过使用`document.createElement("A")`方法,开发者可以灵活地创建具有各种属性的`<a>`元素,并通过JavaScript控制其行为和样式。在Web开发中,这种技术对于实现页面的动态交互和功能至关重要。 需要...
在IE9及更高版本中,为了更好地遵循W3C标准,微软对某些方法进行了调整,使得`document.createElement`的行为与其他现代浏览器如Firefox和Chrome保持一致。这可能导致在旧的编写方式下出现兼容性问题,尤其是在尝试...
`SetAttribute`和`InnerText`被用来设置元素的属性和内容,然后通过`AppendChild`将这些元素添加到XML文档中。 #### 三、DOM操作:插入、替换、删除元素 除了创建XML文档,C#还提供了对XML文档进行修改的能力,...
--var recdElement = docElement.appendChild(xmlDoc.createElement("record")); recdElement.setAttribute("bizobj","CM_USERS"); recdElement.setAttribute("state","update"); var trNode = ...
1. 属性处理:JSX中的属性会被转换为对象形式,如`{ className: 'myClass' }`,而在`document.createElement`中,我们需要将这些属性作为单独的参数传递,如`element.setAttribute('class', 'myClass')`。...
- **创建单元格**: 通过`document.createElement("td")`创建单元格元素`col1`和`col2`。 - **设置样式与内容**: 对单元格进行样式设置并填充内容。 - **添加到表格**: 最终将创建好的`row`添加到`tbody`中。 ##### ...
XML(Extensible Markup Language,可扩展标记语言)是一种非常流行的用于存储和传输数据的标准格式。它具有良好的跨平台特性,易于理解和处理,因此在数据交换场景中被广泛采用。在Java中,对XML文件的操作主要包括...