怎么修改js alert弹框样式

JavaScript012

怎么修改js alert弹框样式,第1张

怎么修改js alert弹框样式方法如下:

覆盖window.alert函数,或者直接通过alert的原型来覆盖;

原理:alert 属于window 的函数,每个函数都有原型对象prototype ,只需要修改window.alert的原型对象即可改变原生alert的样子;

代码如下

window.alert.prototype = function(msg){

//some code here ,怎么改都行

alert('消息:'+msg)

}

常用两种返回方法:

1.window.showModalDialog(url,args,dialogattrs) 

参数说明: 

url:弹出页面地址 

agrs:主窗口传给对话框的参数,可以是任意类型(数组也可以) 

dialogattrs:弹出窗口的样式参数 

模式对话框用法: 

主窗口:var value =window.showModalDialog('test.jsp',strs,'resizable:yes') 

弹出框中通过window.returnValue设置返回值。

2。window.open: 

【父窗口】 

代码如下: 

<script> 

function show_child() 

var child=window .open("child.html","child","height=200,width=400,status=yes,toolbar=no,menubar=no,location=no") 

/* if(!child.closed) 

if(!window .close()) 

var textValue = frm.txt.value parent.frm0.txt0.value = textValue 

else 

window .close() 

child.close() 

}*/ 

</script> 

<a href="javascript:show_child()">打开子窗口</a> 

<form name=frm0> 

<input type="text" name="txt0" id="txt0"> //注意这里一定要写ID属性不然FF下取不到值 

</form> 

【子窗口】

代码如下: 

<script> 

function choseItem() 

var v="" 

var check_item = document.frm.item 

for(i=0i<check_item.lengthi++) 

if(check_item[i].checked) 

v+=","+check_item[i].value 

document.frm.txt.value=v.replace(/^,{1}/,"") 

function foo() 

window .close() 

window .opener.document.getElementById("txt0").value=document.getElementById("txt").value 

</script> 

<body> 

<form name=frm> 

<input type=checkbox name=item value=1 onclick="choseItem()">a 

<input type=checkbox name=item value=2 onclick="choseItem()">b 

<input type=checkbox name=item value=3 onclick="choseItem()">c 

<input type=checkbox name=item value=4 onclick="choseItem()">d 

<input type=text name="txt" id="txt"> 

</form> 

<input type=button value="关闭" onclick="foo()"> 

</body>

JS中alert样式为浏览器内置设定,标题及颜色等是无法修改的。

如果因为网站的需要,需要修改标题或者样式等,一般解决方案是使用DOM模拟弹出