动态脚本
1 载入脚本文件

var s = document.createElement("script");
s.src = "test2.js";
s.type = "text/javascript";
document.body.appendChild(s);

2 创建一段js程序块
由于ie中不支持script节点操作文本节点,只能通过script节点的text属性赋值,但safari3.0-不支持text属性

var s = document.createElement("script");
s.type = "text/javascript";
if (s.text != undefined) {
s.text = "alert('hello world')";
} else {
var t = document.createTextNode("alert('hello world')");
s.appendChild(t);
}
document.body.appendChild(s);

动态样式表
1 载入样式表文件

var l = document.createElement("link");
l.href = "test.css";
l.type = "text/css";
l.rel = "stylesheet";
var head = document.getElementsByTagName("head")[0];
head.appendChild(l);

2 创建css片段
由于ie中不支持likn节点操作文本节点,只能通过script节点的styleSheet.cssText属性赋值(使用这种方法有时候也会出错!)

var l = document.createElement("link");
l.type = "text/css";
l.rel = "stylesheet";
if (l.styleSheet != undefined) {
l.styleSheet.cssText = "#mydiv{color:red;}";
} else {
var t = document.createTextNode("#mydiv{color:red;}");
l.appendChild(t);
}
var head = document.getElementsByTagName("head")[0];
head.appendChild(l);

Element的事件属性、样式属性 1 事件属性 通过属性调用得到的是js方法 getAttribute调用得到的是代码字符串 (ie8-得到的都是js方法)

2 样式属性 通过属性调用得到对象 getAttribute调用得到的是空

setAttribue 在ie8-设置class、style、事件无效,建议获取和设置都使用属性调用这种方法

var d = document.getElementById("d1");
alert(typeof d.onclick);
alert(d.getAttribute("onclick")); alert(d.getAttribute("stlye"));
alert(d.style);
alert(d.style.color);

文本处理
innerHTML 把元素中间的全部文本输出包括html标签(同时ie、opera标签名变为大写),赋值不会自动html编码
innerText 把元素中间的全部文本输出不包括html标签,赋值会自动html编码(FF不支持这个属性)

var d = document.getElementById("mydiv");
alert(d.innerHTML);
alert(d.innerText);
d.innerHTML = "<p>hehe</p>";
alert(d.innerHTML);
d.innerText = "<p>haha</p>";
alert(d.innerHTML);

js之dom_2的更多相关文章

  1. Moment.js学习(一)源代码

    本篇主要是学习Moment.js.类库源代码如下: 2.4版本. //! moment.js //! version : 2.4.0 //! authors : Tim Wood, Iskren Ch ...

  2. Vue.js 和 MVVM 小细节

    MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核心是提供对View 和 ViewModel 的双向数据绑定,这使得ViewModel 的状态改变可以自 ...

  3. js学习笔记:操作iframe

    iframe可以说是比较老得话题了,而且网上也基本上在说少用iframe,其原因大致为:堵塞页面加载.安全问题.兼容性问题.搜索引擎抓取不到等等,不过相对于这些缺点,iframe的优点更牛,跨域请求. ...

  4. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  5. JS调用Android、Ios原生控件

    在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...

  6. jquery和Js的区别和基础操作

    jqery的语法和js的语法一样,算是把js升级了一下,这两种语法可以一起使用,只不过是用jqery更加方便 一个页面想要使用jqery的话,先要引入一下jqery包,jqery包从网上下一个就可以, ...

  7. 利用snowfall.jquery.js实现爱心满屏飞

    小颖在上一篇一步一步教你用CSS画爱心中已经分享一种画爱心的方法,这次再分享一种方法用css画爱心,并利用snowfall.jquery.js实现爱心满屏飞的效果. 第一步: 利用伪元素before和 ...

  8. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

  9. JS正则表达式常用总结

    正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...

随机推荐

  1. python 二分法查找

    这个也是之前写的程序,现在把它贴上来 #!/usr/bin/python import os os.system('clear') def binsearch(seq,x,low,high): mid ...

  2. Topcoder Srm627 DIV 2

    A,B:很水,注意边界,话说HACK都是这些原因. C: R[I][J]:表示反转I-J能改变冒泡排序的次数: DP方程:dp[i][k]=max(dp[j][k],dp[j][k-1]+dp[j][ ...

  3. JAVA非空条件三元运算符

    //非空情况处理: // Integer holidayPrice = order.get("holidayPrice")!=null?Integer.valueOf(String ...

  4. jquery json遍历和动态绑定事件

    <div id='tmpselectorList' style='border: 1px solid grey;max-height: 150px;position:absolute;text- ...

  5. Sqli-labs less 18

    Less-18 本关我们这里从源代码直接了解到 对uname和passwd进行了check_input()函数的处理,所以我们在输入uname和passwd上进行注入是不行的,但是在代码中,我们看到了 ...

  6. ExtJs之VTYPE验证

    <!DOCTYPE html> <html> <head> <title>ExtJs</title> <meta http-equiv ...

  7. SELECT 语句不详解

    INSERT INTO ...  SELECT 语句, 将查询的结果插入到一张新表中(可为临时表) DECLARE @MyTable Table ( SalesOrderID int, Custome ...

  8. java volatile 和Transient 关键字

    java关键字volatile volatile修饰的成员变量在每次被线程访问时,都强迫从主内存中重读该成员变量的值.而且,当成员变量发生变化时,强迫线程将变化值回写到主内存.这样在任何时刻,两个不同 ...

  9. lintcode:两个数组的交

    题目 返回两个数组的交 样例 nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回 [2]. 解题 排序后,两指针找相等元素,注意要去除相同的元素 public class ...

  10. Java笔记——JavaMail发送邮件

    1.JavaMail概述  Java Mail是由SUN公司提供的专门针对邮件的API,主要Jar包:mail.jar.activation.jar. ======================== ...