javascript 动态操作Html

<html>
        <body>
          <p>aaaaa</p>
          <input type="button" value="confirm"/>
          <div id=”mydiv”> some text </div>
          <input type=”radio” value=”red” name=”color” id=”colorRed”>
          <input type=”radio” value=”green” name=”color” id=”colorGreen” testatr=”testvalue”>
        </body>
</html>

1.获得html标签

var html=document.documentElement

var html=document.childNodes[0]

var html= document.firstChild

2. 获得body标签

var body= document.body

3. 获得文档标题

var title= document.title;

document.title=”new titile”;

4. 获得URL,Domain,Referrer,及跨域问题

var url= document.URL;//获得浏览器地址栏中完整的URL信息

var domain= document.domain;//获取该页面的域名

var referrer=document.referrer;//表示连接到此页面的URL地址信息,可为空。

对于页面中包含其他子域的框架或内嵌框架时,由于javascript 无法跨域访问,此时可以设置referrer属性来解决跨域问题。

假设www.test.com内某页面加载了来自p2p.test.com的内嵌框架,可以将domain 设置为test.com来解决跨域问题。

具体可以参考http://www.cnblogs.com/rainman/archive/2011/02/20/1959325.html

5. 根据id获得元素

var div= document.getElementById(“mydiv”); //仅返回文档中第一次出现的元素。

6. 根据tag name 获得元素

var img= document.getElementsByTagName(“img”);//返回HTMLCollection

7. 根据name属性获得元素

var radio=document.getElementsByName(“color”);

8. 其他特殊的集合

document.anchors: 包含name特性的所有<a> 元素

document.forms :所有<form>元素,同document.getElementsByTagName(“form”)

document.images : 所有<img> 元素集合

document.links : 所有含href特性的<a> 元素

9. 获取自定义属性值

var q= document.getElementById(“mydiv”).getAttribute(“testatr”);

10.创建元素

var div=document.createElement(“div”);

div.id=”newdivid”;

div.className=”box”;

document.body.appendChild(div);

11. 动态javacript,css

<script type=”text/javascript” src=”client.js”></script>

或<script type=”text/javascript”>

function sayhi(){

alert(“hi”);

}

</script>

var script =document.createElement(“script”);

script.type=”text/javascript”;

script.src=”client.js”或

var function=”function sayhi(){alert(‘hi’);}”;

try{

script.appendChild(document.createTextNode(“function”));

}catch(ex){

script.text=”function”;

}

document.body.appendChild(“script”);

考虑到不同浏览器兼容性,汇总如下:

<script type="text/javascript">
function loadscript(url){
    //<script type=”text/javascript” src=”client.js”></script>
    var script =document.createElement(“script”);
    script.type=”text/javascript”;
    script.src=url;
    document.body.appendChild(script);
}
function loadscripttext(code){
    //<script type=”text/javascript”>
    //function sayhi(){alert("hi");}
    //</script>
    var script =document.createElement(“script”);
    script.type=”text/javascript”;
    try{
            script.appendChild(document.createTextNode(“function”));
        }catch(ex){
            //IE 视script为特殊元素,不允许修改script子节点
            script.text=”function”;
        }
    document.body.appendChild(script);
}

function loadstyle(url){
    //<link rel="stylesheet" type="text/css" href="style.css">
    var link =document.createElement(“link”);
    link.rel="stylesheet";
    link.type=”text/css”;
    link.href=url;
    var head =document.getElementsByTagName("head")[0];
    head.appendChild(link);
}
function loadstyletext(css){
    //<style type=”text/css”>
    //body{background-color:red}
    //</style>
    var style =document.createElement(“style”);
    style.type=”text/css”;
    try{
            style.appendChild(document.createTextNode(css));
        }catch(ex){
            //IE 视style为特殊元素,不允许修改style子节点
            style.text=css;
        }
    var head =document.getElementsByTagName("head")[0];
    head.appendChild(link);
}
</script>
时间: 2024-12-12 13:56:17

javascript 动态操作Html的相关文章

Javascript动态操作CSS总结

一.使用js操作css属性的写法 1.对于没有中划线的css属性一般直接使用style.属性名即可. 如:obj.style.margin,obj.style.width,obj.style.left,obj.style.position 2.对于含有中划线的css属性,将每个中划线去掉并将每个中划线后的第一个字符换成大写即可. 如:obj.style.marginTop,obj.style.borderLeftWidth,obj.style.zIndex,obj.style.fontFamil

[搬运自我的CSDN博客] python抓取javascript动态生成HTML内容的实践

<注:CSDN博客在美国访问特别卡,所以转移到cnblogs来发文章> 本实验在Ubuntu14.04上完成.使用的浏览器是火狐(Firefox 33.0),python版本是2.7.6. 大家都知道用urllib配合正则表达式抓取静态HTML的内容很方便,但是如果网页中有javascript动态生成的内容,urllib就无能为力了. 此时我们要借助一个额外的工具:selenium.它的工作原理是操纵(火狐)浏览器浏览目标网页,等待网页中的javascript全部执行完毕后再对HTML源码进行

javascript生成表格增删改查 JavaScript动态改变表格单元格内容 动态生成表格 JS获取表格任意单元格 javascript如何动态删除表格某一行

jsp页面表格布局Html代码 <body > <center> <input type="text" value="111" id="mytext"> <table border="1" width="60%" id="mytable"> <tr> <td id="td1">第一行第一列<

javascript 动态判断html元素

在javascript中为了针对不同的元素执行不同的操作,需要在javascript中对触发事件的元素进行判断,然后执行不同的操作. 例子: html <input type='button' name='updatemetal' value='修改' onclick='getmetalid(this)'> <input type='button' name='deletemetal' value='删除' onclick='getmetalid(this)'> javascrip

JavaScript Dom操作-增删改节点1

一.Dom操作 文档对象模型DOM:一套定义.规范.准则 为了能够让程序JavaScript去操作页面中的元素节点而定义的一套标准 DOM会把文档看作是一棵树,页面中的每个元素就是树上的一个一个节点:同时DOM定义了很多方法.属性等来操作这棵树中的每一个元素(节点)——每个节点称为DOM节点. 1.  节点.children      ——      (没有兼容性问题:只包含元素节点)   获取第一级子元素 childNodes    获取第一级子元素   有兼容性问题(标准浏览器文本和元素视为

javascript DOM 操作基础知识小结

经常用到javascript对dom,喜欢这方便的朋友也很多,要想更好的对dom进行操作,这些基础一定要知道的. DOM添加元素,使用节点属性 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.

【转】console.time 简单分析javascript动态添加Dom节点的性能

本文代码约定 1 el: 指的是增加直接点的DOM节点 2 totalNum: 为100000(值越大越能体现差距)指的是循环创建的DOM节点 3 for(var i=0;i<totalNum;i++){}: 我们用for来表示就好了,简写代码 如果叫你用javascript动态增加DOM节点,你有哪几种思路呢? 1 .使用innerHTML和字符串拼接 console.time("time1"); var str = ""; for{ str += &quo

console.time 简单分析javascript动态添加Dom节点的性能

Bullshit 本来想每天都更新下博客的,但是最近要考试,还有就是自己还是停留在暗自窃喜中吧(这种想法要改变).其实最近总在想,自己要怎么去管理自己的数据,每天的生活都是对自己的数据的增删查改.昨天把自己的电脑重装了,确实很多软件的存放要改地方了,之前不知道怎么去管理软件安装,所以放得乱七八糟的.说好一大堆废话之后,我最后再说一遍,管好自己的时间.数据真的比你学习东西重要. Method 本文代码约定 1 el: 指的是增加直接点的DOM节点 2 totalNum: 为100000(值越大越能

js实现动态操作table

 本章案例为通过js,动态操作table,实现在单页面进行增删改查的操作. 简要案例如下: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%&