易截截图软件、单文件、免安装、纯绿色、仅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继承

一直想对Javascript再次做一些总结,正好最近自己写了一个小型Js
UI库,总结了一下Js的继承机制,在网上也看了一些前辈们博客里的总结,感觉分析不是特别全面。这里仅仅是把自己的学习体会拿出来分享一下,希望对大家
学习Javascript有所帮助。


Javascript本身是从Perl语言的语法演变而来的,本质上是脚本语言 ......

javascript判断checkBox是否为空

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

javaScript循序渐进(3)


<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
闭包(
closure

闭包意味着内层的函数可以引用存在于包围他的函数内的变量,即使外层函数的执行已经终止。这个特性非常强大和复杂。
 
例如:闭包如何使代码更清晰的两个例子
找出
ID
为‘
main’
的元素
var ......

引用 javascript定义对象写法(整理)

引用
Aaron 的 javascript定义对象写法(整理)
javascript定义对象的几种简单方法
1.构造函数方式,全部属性及对象的方法都放在构造方法里面定义
优点:动态的传递参数
缺点:每创建一个对象就会创建相同的方法函数对象,占用大量内存
function User1(name, password) {
this.name = name;
this.password = pass ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号