//遍历属性,返回名值对
function outputAttributes(element){
var pairs = new Array(),
attrName,
attrValue,
i,
len; for(i=0,len=element.attributes.length;i<len;i++){
attrName = element.attributes[i].nodeName;
attrValue = element.attributes[i].nodeValue;
//针对 <IE7 bug
if(element.attributes[i].specified){
pairs.push(attrName+'=\''+attrValue+'\'');
}
}
return pairs.join(''); } var script = document.getElementById('script');
alert(outputAttributes(script));

分割文本节点,从文本节点中提取数据:

//分割文本节点是从文本节点中提取数据的一种常用的DOM解析技术
var element = document.creatElement('div');
element.className = 'message'; var textNode = document.creatTextNode('Hello World!');
element.appendChild(textNode); document.body.appendChild(element);
var newNode = element.firstChild.splitText(5); alert(element.firstChild.nodeValue);
//alert(newNode.nodeValue);
//alert(element.childNodes.length);

假设我们想给ul标签添加3个列表项,如果逐个的添加列表项,将会导致浏览器反复渲染(呈现)新信息。为了避免这个问题,我们可以使用一个文档片段来保存创建的列表项,

然后再一次性把他们添加到文档中:

var fragment = document.createDocumentFragment();
var ul = document.getElementById('myList');
var li = null; for(var i,i=0;i<3;i++){
li = document.createElement();
li.appendChild(document.createTextNode('item'+(i+1)));
fragment.appendChild(li);
} ul.appendChild(fragment);

一天一小段js代码(no.3)的更多相关文章

  1. 一天一小段js代码(no.2)

    (一)可以用下面js代码来检测弹出窗口是否被屏蔽: var blocked = false ; try { /*window.open()方法接受4个参数window.open(要加载的url,窗口目 ...

  2. 一天一小段js代码(no.4)

    最近在看网上的前端笔试题,借鉴别人的自己来试一下: 题目: 写一段脚本,实现:当页面上任意一个链接被点击的时候,alert出这个链接在页面上的顺序号,如第一个链接则alert(1), 依次类推. 有一 ...

  3. 一天一小段js代码(no.1)

    10000个数字中缺少三个数,编程找出缺少的三个数字. 算法实现: /*生成10000个数中随机抽掉三个数后的数组*/ function supplyRandomArray(){ /*生成含有1000 ...

  4. 由一段JS代码引发的思考

    不知道大家在编程的时候有没有遇到过这种情况,就是在循环遍历删除一部分内容的时候,发现只能删除其中一部分,而另一部分却总也删不掉,然后觉得自己的逻辑没有问题啊,于是陷入了深深的抑郁之中…… 昨天在处理一 ...

  5. 我要崩溃了,要解出这么一段js代码背后的东西,这真是一坨啊,别被高度欺骗了,他还有宽度!!!!!试着按下方向右键

    一坨js代码: function s_gi(un, pg, ss) { var c = "s.version='H.26';s.an=s_an;s.logDebug=function(m){ ...

  6. 网页调试js时,如何知道某个事件对应哪段js代码?

    有时候我们需要知道某个事件对应的js代码,比如点击一个div元素时,出现下拉框,我想知道这个功能对应的js代码,那就可以按下图操作: 勾选click事件,重新运行,那么就会在每个click事件那里设置 ...

  7. 用一段JS代码来比较各浏览器的极限内存与运算速度

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 防止横竖屏时,iphone自动缩放的一段js代码

    function orientation_change() {     var viewport = document.querySelector('meta[name="viewport& ...

  9. 一段js代码

    原文地址 [].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math ...

随机推荐

  1. 《笨办法学C》笔记之指针

    C语言编程主要操作的对象就是指针. 指针从哪里来 指针就是表示内存存储区域的一组数值,使用%p格式化字符串. Linux系统会为程序维护两个临时变量存储位置:栈.堆.栈的空间少,栈通常在用户更高的地址 ...

  2. jdk1.8下载安装

    jdk8环境变量 jdk8图解安装 java8安装   1 2 3 4 5 6 7 分步阅读 JDK8 是JDK的最新版本,加入了很多新特性,如果我们要使用,需要下载安装: JDK8在windows ...

  3. sharedpreferences的简单使用

    sharedpreferences 以键值对的方式将数据保存在xml   创建:SharePreferences sp = getShareferences(name,context.---) con ...

  4. 关于maven中央仓库jar包不存在问题

    最近接手一个maven项目,引入依赖的时候报了一个 Missing artifact com.oracle:ojdbc6:jar:12.1.0.1 pom.xml 的错误,网上一查,原来是Oracle ...

  5. 【温故Delphi】双击工程文件打开软件

    问题描述 大部分软件都有鼠标双击文件,就能打开所关联的软件并打开所选工程,这是如何做到的呢? 把文件关联到一个程序中,双击文件来启动程序,那么这个文件名称就是这个程序的命令行的一个参数. 所以要想实现 ...

  6. c# GridView有关RowClick事件,可单击显示选中的row

    //当前选定行 int i = this.gridView1.FocusedRowHandle; //选中行,列名为name的值 gridView1.GetRowCellDisplayText(i, ...

  7. SpringMVC 的RequestMapping

    Spring MVC之@RequestMapping 详解 2013-10-13 23:39 150698人阅读 评论(6) 收藏 举报  分类: Java 精华文章(161)    目录(?)[+] ...

  8. 通过反射获取父类泛型的Class对象 ParameterizedType

    ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0] 这个方法这么用啊,返回什么,请给 ...

  9. PerconaXtraBackup --全备增备prepare restore

    Xtrabackup Xtrabackup包含两个主要的工具,即xtrabackup和innobackupex,二者区别如下:  • xtrabackup只能备份innodb和xtradb引擎表,而不 ...

  10. android 不同dpi图标大小

    LDPI (Low Density Screen,120 DPI),其图标大小为 36 x 36 px.MDPI (Medium Density Screen, 160 DPI),其图标大小为 48 ...