0.判断浏览器: (判断浏览器 来源:http://blog.csdn.net/andyhooo/archive/2007/09/21/1794090.aspx)
<script language="JavaScript">
<!--
function getOs()
{
var OsObject = "";
if(navigator.userAgent.indexOf("MSIE")>0) {
return "MSIE";
}
if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){
return "Firefox";
}
if(isSafari=navigator.userAgent.indexOf("Safari")>0) {
return "Safari";
}
if(isCamino=navigator.userAgent.indexOf("Camino")>0){
return "Camino";
}
if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){
return "Gecko";
}
}
alert("您的浏览器类型为:"+getOs());
-->
</script>
1.获得iframe父窗口中的元素:
parent.document.getElementById(id);
1. 刷新iframe
function refreshIframe(id){
var elmIframe = document.getElementById(''+id);
elmIframe.src="url&nocache="+new Date().getTime();
}
2. 动态删除结点
//动态删除结点(即div)
function delListDiv(id){
var elm = document.getElementById(''+id);
var parentElm = elm.parentNode;
parentElm.removeChild(elm);
alert(parentElm.innerHTML);
}
3. //使getElementsByName通用
// tagName为标签名 attrName为属性名 nameAttrVal为属性值
function getByNamesArr(tagName,attrName,nameAttrVal){
var elem = document.getElementsByTagName(''+tagName); //根据签标获得
var arr = new Array();
for(i = 0,iarr = 0; i < elem.length; i++) {
att = elem[i].getAttribute(''+attrName);
if(att == nameAttrVal) {
arr[iarr] = elem[i];
iarr++;
}
}
return arr;
}
4. 动态增加div、input等
可用 elm.innerHTML = elm.innerHTML+"<div id='div_0'>aaaa</div>";
elm.innerHTML = elm.innerHTML+"<div id='div_1'>bbb</div>";
动态文本框类似
elm.innerHTML = elm.innerHTML+"<input id='txt_0' name='txt_0' type='text' value='aaa' />";
elm.innerHTML = elm.innerHTML+"<input id='txt_1' name='txt_1' type='text' value='bbb' />";
5. (注意:) Js创建input并对name属性赋值 (来自:http://blog.csdn.net/windfeng2005/archive/2008/09/27/2986258.aspx )
注意(重要):
对ie: input并对name属性赋值,必须把name也写进去,即
document.createElement("<input name=/"" + inputName + "/" >")
对firefox: 对name赋值,可通过 elm.setAttribute("name", "nameval");
//注意://ie 用iframe的父element的appendChild显示不出来,所以用innerHTML代替
//elm.appendChild(elmDiv);
parentElm.innerHTML = parentElm.innerHTML+ newElm.innerHTML;
//alert("before: elm.innerHTML="+elm.innerHTML);
//ie应注意的问题:
来自:http://blog.csdn.net/windfeng2005/archive/2008/09/27/2986258.aspx
/*
* 创建Input
* inputName -- name属性名称
* inputType -- input类型 如checkbox text submit radio ...
* inputValue -- input value属性值
* aDiv -- 添加input的位置
*
*/
function createInput(inputName, inputType, inputValue, aDiv) {
var check = document.createElement("<input name=/"" + inputName + "/" >"); //关键, 注一
check.setAttribute("type", inputType);
check.setAttribute("value", inputValue);
aDiv.appendChild(check);
}
在注一位置,要把name属性一起写进去,否则input的name属性赋值将会比较麻烦(用check.name="***"修改看不到效果)