方法一:
使用DOM.setAttribute("class","类名")
方法二:
DOM.classList.add("类名")
方法二 可以给DOM元素添加一个类名后 还可以在继续给DOM元素添加新的类名 并且不会覆盖已有的类名
概念:把要添加的节点添加到指定父级里面的最后面,所以也叫追加。
使用方式:fatherdom.appendChild( insertdom )。
兼容性:所有浏览器都支持此方法。
概念:把要插入的节点添加到指定父级里面的指定节点之前。
使用方式:fatherdom.insertBefore( insertdom,chosendom )。
兼容性:所有浏览器都支持此方法,但是值得注意的是,如果第二个参数节点不存在,在IE和Safari下会把要添加的节点使用appendChild()方法追加到指定父级中,而其他主流浏览器(Firefox、Chrome、Opera等)下会报错,所以在插入节点的时候,需要先判断第二个参数节点是否存在
效果
注意:很多人都认为设置disabled="true"是为启用,设置为“false”时为禁用,这是错的。
1、利用js代码首先创建一个div,document.createElement('div')
2、确认div添加位置,可以在某个dom元素后面,或者通过css属性控制具体位置,主要通过left/top等属性控制。
3、确定位置之后,显示div即可。
示例:比如html中有一个文本输入框,我们现在需要在挨着输入框右下角位置显示一个div。
<input type="text" id="city" value="beijing"/>
方法:
function createDiv(){//首先创建div
var descDiv = document.createElement('div')
document.body.appendChild(descDiv)
//获取输入框dom元素
var text = document.getElementById('city')
//计算div的确切位置
var seatX = text.offsetLeft + text.offsetWidth//横坐标
var seatY = text.offsetTop + text.offsetHeight//纵坐标
//给div设置样式,比如大小、位置
var cssStr = "z-index:5width:420pxheight:300pxbackground-color:#FFFF99border:1px solid blackposition:absoluteleft:"
+ seatX + 'pxtop:' + seatY + 'px'
//将样式添加到div上,显示div
descDiv.style.cssText = cssStr
descDiv.innerHTML = '这是一个测试的div显示的内容'
descDiv.id = 'descDiv'
descDiv.style.display = 'block'
}
1.首先创建html结构,如下图所示,一个input元素,一个按钮,一个空的ul列表。
2.然后添加按钮点击事件,如下图所示,在按钮点击事件中获得input元素。
3.通过value属性我们可以获得用户在input中输入的内容,如下图所示。
4.下面我们来动态创建一个li元素,如下图所示,运用document中的createElement方法即可。
5.创建好li元素以后,下面要做的就是给其设置innerHTML内容,如下图所示。
6.接下来就是获取ul元素了,如下图所示,仍然用getElementById方法。
7.最后通过调用appendChild方法将创建的li元素添加到ul列表中,如下图所示。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)