一天一小段js代码(no.3)
//遍历属性,返回名值对
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)的更多相关文章
- 一天一小段js代码(no.2)
(一)可以用下面js代码来检测弹出窗口是否被屏蔽: var blocked = false ; try { /*window.open()方法接受4个参数window.open(要加载的url,窗口目 ...
- 一天一小段js代码(no.4)
最近在看网上的前端笔试题,借鉴别人的自己来试一下: 题目: 写一段脚本,实现:当页面上任意一个链接被点击的时候,alert出这个链接在页面上的顺序号,如第一个链接则alert(1), 依次类推. 有一 ...
- 一天一小段js代码(no.1)
10000个数字中缺少三个数,编程找出缺少的三个数字. 算法实现: /*生成10000个数中随机抽掉三个数后的数组*/ function supplyRandomArray(){ /*生成含有1000 ...
- 由一段JS代码引发的思考
不知道大家在编程的时候有没有遇到过这种情况,就是在循环遍历删除一部分内容的时候,发现只能删除其中一部分,而另一部分却总也删不掉,然后觉得自己的逻辑没有问题啊,于是陷入了深深的抑郁之中…… 昨天在处理一 ...
- 我要崩溃了,要解出这么一段js代码背后的东西,这真是一坨啊,别被高度欺骗了,他还有宽度!!!!!试着按下方向右键
一坨js代码: function s_gi(un, pg, ss) { var c = "s.version='H.26';s.an=s_an;s.logDebug=function(m){ ...
- 网页调试js时,如何知道某个事件对应哪段js代码?
有时候我们需要知道某个事件对应的js代码,比如点击一个div元素时,出现下拉框,我想知道这个功能对应的js代码,那就可以按下图操作: 勾选click事件,重新运行,那么就会在每个click事件那里设置 ...
- 用一段JS代码来比较各浏览器的极限内存与运算速度
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 防止横竖屏时,iphone自动缩放的一段js代码
function orientation_change() { var viewport = document.querySelector('meta[name="viewport& ...
- 一段js代码
原文地址 [].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math ...
随机推荐
- Loadrunner,将http请求返回的中文结果打印出来
Loadrunner 做保险承保业务测试 1. 保险正常业务流程:保费计算--->保存--->申请核保--->核保--->缴费(出保单) 问题描述: 脚本录制,参数化完成后,R ...
- 模拟XShell的小项目
不知道大家有没有用过XShell这款工具,这款工具通过windows可以远程操作处于开机状态的linux操作系统,也就是说把你的电脑和一台服务器连入网络,你通过输入服务器所在的IP地址建立一个会话就可 ...
- 探 寻 宝 藏--- DP
题目描述 传说HMH大沙漠中有一个M*N迷宫,里面藏有许多宝物.某天,Dr.Kong找到了迷宫的地图,他发现迷宫内处处有宝物,最珍贵的宝物就藏在右下角,迷宫的进出口在左上角.当然,迷宫中的通路不是平坦 ...
- pl/sql中文乱码问题解决
最近用pl/sql连我们公司的数据库,发现表里的中文数据都是“???”,上网查了一下,发现是数据库的编码格式和pl/sql的编码格式不统一造成的. 解决方法非常简单,只要创建一个系统环境变量:NLS_ ...
- jsp页面输入小写金额转大写
<script> function chineseNumber(num){ if (isNaN(num) || num > Math.pow(10, 12)) return &quo ...
- React jQuery公用组件开发模式及实现
目前较为流行的react确实有很多优点,例如虚拟dom,单向数据流状态机的思想.还有可复用组件化的思想等等.加上搭配jsx语法和es6,适应之后开发确实快捷很多,值得大家去一试.其实组件化的思想一直在 ...
- 无法打开注册表项 unknown 没有足够的权限访问
secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose 执行完,重新安装即可.
- js选择器
原生JS选择器有getElementById.getElementsByName.getElementsByTagName和getElementsByClassName这四个,下面我就一个一个介绍这四 ...
- PHP-递归扫描目录和删除目录
(1) 通过递归扫描目录并打印 // php递归扫描目录 function scanMyDir($path){ // 打开目录 $dh = opendir($path); echo '<ul&g ...
- VS2010 网页错误
VS2010向导添加消息处理时,弹出以上错误,原因之一为: 类内没有定义IDD的宏