这是我的极弱项,因为自己的一些原因,一些基础的搬砖方法我可能都忘的差不多了,这里借这次机会进行一次基础的学习,也是进行一次基础的总结,唤醒一下自己体内的搬砖之魂吧。
文档载入后运行函数
window.onload = function () {}
$(document).ready(function(){});
js事件动态绑定
jq中on()和click()区别
$("......").on("click",function(){});
//简单的click动作绑定
$("元素1").on("click","元素2",function(){});
//动态绑定 元素1(父) 中的 元素2(子)
获得xml文件
function loadXmlFile(xmlFile)//xmlFile 是xml文件的地址
{
var xmlDom = null;
if (window.ActiveXObject)//IE浏览器中读取xml文件
{
xmlDom = new ActiveXObject("Microsoft.XMLDOM");
xmlDom.async = "false";
xmlDom.load(xmlFile);
}
else if (document.implementation && document.implementation.createDocument) {
//Firefox,Chrome 浏览器中读取xml文件 ,Chrome 需要开服务器才能访问
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET", xmlFile, false);
xmlhttp.send(null);
xmlDom = xmlhttp.responseXML;
}
else {
xmlDom = null;
}
return xmlDom;
}
对获取的xml对象进行解析
xmlDoc.getElementsByTagName("标签名");---获取标签对象
标签对象.getAttribute("name") ---获取标签属性
......
function actionSence(sceneid, actionid) {
var thisScene = sceneList[sceneid];
var thisEvent = thisScene.childNodes[actionid];
......
if (thisEvent.nodeName == "#text") {
actionSence(sceneid, Number(actionid) + 1);
return;
}
//当nodeName获取为#text的时候,直接继续递归(获取到了空格文本)
直到获得的不是#text(正常标签对象)
......
}
function text(e) {
var t = "";
e = e.childNodes || e;//如果传入的是元素,则继续遍历其子元素;否则假定它是一个数组
for (var i = 0; i < e.length; i++) {
//如果不是元素,追回其文本值;
//否则,递归遍历所有元素的子节点;
t += e[i].nodeType != 1 ? e[i].nodeValue : text(e[i].childNodes);
//元素类型是不是单纯的元素(nodeType==1),而是一个有着文本内容(nodeValue存在)
}
return t;
}