易截截图软件、单文件、免安装、纯绿色、仅160KB

javascript 替换节点

这可能是最被忽略的文档操作之一,这都怪微软的不作为与W3C的无能,搞到大家只知道appendChild与insertBefore。后来爆出appendChild在IE有bug,好了,以后只用insertBefore了。现在jQuery兴起后,无数赶鸭子上架的javascript素人连基本API也不学了,直接上手append, preppend, before, after与replaceWith,这比较悲哀……好了,我们先来看w3c的替换节点方法吧。
replacedNode = parentNode.replaceChild(newChild, oldChild)。从公式中我们可以看出科学家与工程师亽区别,为了执行它,需要三个节点进行参与,并且返回的是被替换的元素,这不利于链式操作。好处是适用性广,支持XML与HTML。
var $ = function(id){
return document.getElementById(id)
}
var replace = function(){
var ul = $("ul"),
lis = ul.innerHTML,
ol = document.createElement("ol");
ul.parentNode.replaceChild(ol,ul);
ol.innerHTML = lis;
replace = function(){}//只允许执行一次
}

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta content="IE=8" http-equiv="X-UA-Compatible"/>
<title>替换节点 by 司徒正美 </title>
<script type="text/javascript">
var $ = function(id){
return document.getElementById(id)
}
var replace = function(){
var ul = $("ul"),
lis = ul.innerHTML,
ol = document.createElement("ol");
ul.parentNode.replaceChild(ol,ul);
ol.innerHTML = lis;
replace = function(){}//只允许执行一次
}
</script>
</head>
<body>
<ul id="ul" >
<li>List Item 1</li>
<li>List Item 2</li>
<li>List Item 3</li>
<li>List Item 4</li>
</ul>
<button type="button" onclick = "replace()" >替换节点</button>
</body>
</html>

运行代码
oReplace = object.replaceNode(oNewNode)。微软的私有实现,不过只支持HTML。好处是只用到两个节点。


相关文档:

正则表达式 javascript 验证表单

写下一个关于用正则表达式验证表单的代码,以后可以用到。
function checkform(){
var null_regu = /^[ ]*$/;
var age_regu = /^[1-9][0-9]$/;
var tel_regu = /^[0-9]*(-){0,1}[0-9]{8,11}$/;
var email_regu=/^[\w]+[\w-\.]*@([\w]+\.)+[\w]+$/;
var qq_regu=/^(\d+){6,12}/;
if(new RegExp(null_regu ......

JavaScript类和继承:constructor属性

constructor属性始终指向创建当前对象的构造函数。比如下面例子:
// 等价于 var foo = new Array(1, 56, 34, 12);
 
var arr = [
1

56

34

12
];  
console.log(arr.constructor === Array);  ......

JavaScript判断浏览器类型及版本

你知道世界上有多少种浏览器吗?除了我们熟知的IE, Firefox, Opera, Safari四大浏览器之外,世界上还有近百种浏览器。
       几天前,浏览器家族有刚诞生了一位小王子,就是Google推出的Chrome浏览器。由于Chrome出生名门,尽管他还是个小家伙,没有人敢小看他。以后,咱们常说浏览器的&ld ......

javascript判断checkBox是否为空

<script type="text/javascript">
function checkform() {
    //判断标题栏是否填写
    if (document.form1.title.value == "") {
        alert("信息类型不能为空!");
     &nb ......

javascript event事件解析1 only handbook


event.srcElement 与event.target

 
Javascript event.srcElement
感觉这个挺好,可以捕获当前事件作用的对象,如event.srcElement.tagName可以捕获活动标记名称。
注意获取的标记都以大写表示,如"TD","TR","A"等。所以把看过的一些抄下来,不记得的时候再来看看。
< ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号