这是我在网上找的一段代码,在body中添加select会出问题,提示ScreenConvert() 方法的var oS = objScreen.style;这一行报错,说style不是对象或者空
在jsp中则会停止响应,卡住页面,请各位指点
<script charset="GBK" language="javascript">
<!--
var t_DiglogX,t_DiglogY,t_DiglogW,t_DiglogH; function gid(id) {
return document.getElementById?document.getElementById(id):null;
}
function gname(name) {
return document.getElementsByTagName?document.getElementsByTagName(name):new Array()
}
function Browser() {
var ua, s, i;
this.isIE = false;
this.isNS = false;
this.isOP = false;
this.isSF = false;
ua = navigator.userAgent.toLowerCase();
s = "opera";
if ((i = ua.indexOf(s)) >= 0) {
this.isOP = true;return;
}
s = "msie";
if ((i = ua.indexOf(s)) >= 0) {
this.isIE = true;return;
}
s = "netscape6/";
if ((i = ua.indexOf(s)) >= 0) {
this.isNS = true;return;
}
s = "gecko";
if ((i = ua.indexOf(s)) >= 0) {
this.isNS = true;return;
}
s = "safari";
if ((i = ua.indexOf(s)) >= 0) {
this.isSF = true;return;
}
}
function DialogLoc() {
var dde = document.documentElement;
if (window.innerWidth) {
var ww = window.innerWidth;
var wh = window.innerHeight;
var bgX = window.pageXOffset;
var bgY = window.pageYOffset;
} else {
var ww = dde.offsetWidth;
var wh = dde.offsetHeight;
var bgX = dde.scrollLeft;
var bgY = dde.scrollTop;
}
t_DiglogX = (bgX + ((ww - t_DiglogW)/2));
t_DiglogY = (bgY + ((wh - t_DiglogH)/2));
}
function DialogShow(showdata,ow,oh,w,h) {
var objDialog = document.getElementById("DialogMove");
if (!objDialog) objDialog = document.createElement("div");
t_DiglogW = ow;
t_DiglogH = oh;
DialogLoc();
objDialog.id = "DialogMove";
var oS = objDialog.style;
oS.display = "block";
oS.top = t_DiglogY + "px";
oS.left = t_DiglogX + "px";
oS.margin = "0px";
oS.padding = "0px";
oS.width = w + "px";
oS.height = h + "px";
oS.position = "absolute";
oS.zIndex = "5";
oS.background = "#000000";
oS.border = "solid #000 1px"; //边框粗细和颜色
objDialog.innerHTML = showdata;
document.body.appendChild(objDialog);
}
function DialogHide() {
ScreenClean();
var objDialog = document.getElementById("DialogMove");
if (objDialog) objDialog.style.display = "none";
}
function ScreenConvert() {
var browser = new Browser();
var objScreen = gid("ScreenOver");
if (!objScreen) var objScreen = document.createElement("div");
var oS = objScreen.style;
objScreen.id = "ScreenOver";
oS.display = "block";
oS.top = oS.left = oS.margin = oS.padding = "0px";
if (document.body.clientHeight) {
var wh = document.body.clientHeight + "px";
} else if (window.innerHeight) {
var wh = window.innerHeight + "px";
} else {
var wh = "100%";
}
oS.width = "100%";
oS.height = wh;
oS.position = "absolute";
oS.zIndex = "3";
if ((!browser.isSF) && (!browser.isOP)) {
oS.background = "#84AAE3"; //背景颜色
} else {
oS.background = "#F0F0F0";
}
oS.filter = "alpha(opacity=40)";
oS.opacity = 40/100;
oS.MozOpacity = 40/100;
document.body.appendChild(objScreen);
var allselect = gname("select");
for (var i=0; i<allselect.length; i++) allselect.style.visibility = "hidden";
}
function ScreenClean() {
var objScreen = document.getElementById("ScreenOver");
alert(objScreen);
if (objScreen) objScreen.style.display = "none";
var allselect = gname("select");
for (var i=0; i<allselect.length; i++) allselect.style.visibility = "visible";
}
//举报
function Report(Type,ID)
{
var PostData = "do=" + Type + "&reportid=" + ID;
//PostRequest(window.location.protocol + "//" + window.location.host + "/AJAX_Comm.aspx", PostData);
var showData = sample.innerHTML;
//ScreenConvert();DialogShow("<div id=\"DialogLoading\">正在读取,请稍候...</div>",110,10,124,20);
ScreenConvert();DialogShow(showData,500,400,420,170);
}//-->
</script>调用部分:
<input type="button" onclick="this.blur();Report('reportvote',1175222);" style='border:solid 1px #666666;background:#cccccc' value="新增分类"/>
在jsp中则会停止响应,卡住页面,请各位指点
<script charset="GBK" language="javascript">
<!--
var t_DiglogX,t_DiglogY,t_DiglogW,t_DiglogH; function gid(id) {
return document.getElementById?document.getElementById(id):null;
}
function gname(name) {
return document.getElementsByTagName?document.getElementsByTagName(name):new Array()
}
function Browser() {
var ua, s, i;
this.isIE = false;
this.isNS = false;
this.isOP = false;
this.isSF = false;
ua = navigator.userAgent.toLowerCase();
s = "opera";
if ((i = ua.indexOf(s)) >= 0) {
this.isOP = true;return;
}
s = "msie";
if ((i = ua.indexOf(s)) >= 0) {
this.isIE = true;return;
}
s = "netscape6/";
if ((i = ua.indexOf(s)) >= 0) {
this.isNS = true;return;
}
s = "gecko";
if ((i = ua.indexOf(s)) >= 0) {
this.isNS = true;return;
}
s = "safari";
if ((i = ua.indexOf(s)) >= 0) {
this.isSF = true;return;
}
}
function DialogLoc() {
var dde = document.documentElement;
if (window.innerWidth) {
var ww = window.innerWidth;
var wh = window.innerHeight;
var bgX = window.pageXOffset;
var bgY = window.pageYOffset;
} else {
var ww = dde.offsetWidth;
var wh = dde.offsetHeight;
var bgX = dde.scrollLeft;
var bgY = dde.scrollTop;
}
t_DiglogX = (bgX + ((ww - t_DiglogW)/2));
t_DiglogY = (bgY + ((wh - t_DiglogH)/2));
}
function DialogShow(showdata,ow,oh,w,h) {
var objDialog = document.getElementById("DialogMove");
if (!objDialog) objDialog = document.createElement("div");
t_DiglogW = ow;
t_DiglogH = oh;
DialogLoc();
objDialog.id = "DialogMove";
var oS = objDialog.style;
oS.display = "block";
oS.top = t_DiglogY + "px";
oS.left = t_DiglogX + "px";
oS.margin = "0px";
oS.padding = "0px";
oS.width = w + "px";
oS.height = h + "px";
oS.position = "absolute";
oS.zIndex = "5";
oS.background = "#000000";
oS.border = "solid #000 1px"; //边框粗细和颜色
objDialog.innerHTML = showdata;
document.body.appendChild(objDialog);
}
function DialogHide() {
ScreenClean();
var objDialog = document.getElementById("DialogMove");
if (objDialog) objDialog.style.display = "none";
}
function ScreenConvert() {
var browser = new Browser();
var objScreen = gid("ScreenOver");
if (!objScreen) var objScreen = document.createElement("div");
var oS = objScreen.style;
objScreen.id = "ScreenOver";
oS.display = "block";
oS.top = oS.left = oS.margin = oS.padding = "0px";
if (document.body.clientHeight) {
var wh = document.body.clientHeight + "px";
} else if (window.innerHeight) {
var wh = window.innerHeight + "px";
} else {
var wh = "100%";
}
oS.width = "100%";
oS.height = wh;
oS.position = "absolute";
oS.zIndex = "3";
if ((!browser.isSF) && (!browser.isOP)) {
oS.background = "#84AAE3"; //背景颜色
} else {
oS.background = "#F0F0F0";
}
oS.filter = "alpha(opacity=40)";
oS.opacity = 40/100;
oS.MozOpacity = 40/100;
document.body.appendChild(objScreen);
var allselect = gname("select");
for (var i=0; i<allselect.length; i++) allselect.style.visibility = "hidden";
}
function ScreenClean() {
var objScreen = document.getElementById("ScreenOver");
alert(objScreen);
if (objScreen) objScreen.style.display = "none";
var allselect = gname("select");
for (var i=0; i<allselect.length; i++) allselect.style.visibility = "visible";
}
//举报
function Report(Type,ID)
{
var PostData = "do=" + Type + "&reportid=" + ID;
//PostRequest(window.location.protocol + "//" + window.location.host + "/AJAX_Comm.aspx", PostData);
var showData = sample.innerHTML;
//ScreenConvert();DialogShow("<div id=\"DialogLoading\">正在读取,请稍候...</div>",110,10,124,20);
ScreenConvert();DialogShow(showData,500,400,420,170);
}//-->
</script>调用部分:
<input type="button" onclick="this.blur();Report('reportvote',1175222);" style='border:solid 1px #666666;background:#cccccc' value="新增分类"/>
解决方案 »
- 请教一个js+div弹窗代码
- IE8中OPTIONS.LENGTH提示錯誤。
- jqurey treeview在asp.net里如何将后台sqlserver的数据在页面加载时就动态绑定并显示
- 全局下定义var i与window.i真的差好多啊
- 求助,取出firefox中链接的汉字,发现有问题
- 表单赋值的问题?急急。。。
- 请教 谁有好一点的 xml,javascript解析器
- 为什么有的javascript嵌套在html中而有的写在文件的尾部
- 请教一个简单的关于window.event.srcElement的问题。谢谢
- 在文本框中按下回车,怎样使旁边的按钮按下?
- 怎样强制关闭一个窗口
- refer的问题
//如果遮盖层不存在 就创建一个
if (!objScreen) var objScreen = document.createElement("div");
var oS = objScreen.style; //设置遮盖层样式
你alert一下 objScreen 应该是没有找到或创建成功这个层