以前做过一个,但要在<body></body>中插入div,用起来很不方便,干脆做成了一个JS文件,
DIV通过document.body.insertBefore来插入.代码如下:
//自动消失的消息显示框
function MyMsgDiv()

{
this.msgDiv = null;
this.msgStyle = "FONT-SIZE:12px;LEFT:expression(this.offsetParent.scrollLeft+20);COLOR:#ffffff;LINE-HEIGHT:150%;POSITION:absolute;TOP:expression(this.offsetParent.scrollTop+10);BACKGROUND-COLOR:#7f1ef6;";
this.ffMsgStyle = "FONT-SIZE:12px;LEFT:20px;COLOR:#ffffff;LINE-HEIGHT:150%;POSITION:absolute;TOP:10px;BACKGROUND-COLOR:#7f1ef6;";
this.createDiv = function()

{
this.msgDiv = document.createElement("div");
if(window.XMLHttpRequest)

{
this.msgDiv.style.cssText = this.ffMsgStyle;
}
else

{
this.msgDiv.style.cssText = this.msgStyle;
}
document.body.insertBefore(this.msgDiv, document.body.childNodes[0]);
}
this.Show = function(msgstr)

{
this.msgDiv.innerHTML = " " + msgstr + " ";
}
this.createDiv(); //放置此处是为了防止以下的md值为null
var closetime;
var md = this.msgDiv;
this.Show = function(msg,showtime)

{
md.innerHTML =" "+msg+" ";
md.style.visibility = "visible";
if(closetime)window.clearTimeout(closetime);
closetime=setTimeout(this.Hidden,showtime*1000);
}

this.Hidden = function()

{
md.innerHTML = "";
md.style.visibility = "hidden";
}
}
需要用到此功能的页面中,包含脚本文件,
然后建立一个MyMsgDiv实例,显示信息时再调用实例的Show方法即可:
function test()


{
var md = new MyMsgDiv();
md.Show("Hello, world!", 3);
}
posted @ 2006-05-19 17:30 Amnoh 阅读(646) 评论(3)
编辑
在Body中加入
<div id="msgdiv" style="FONT-SIZE: 12px; ; LEFT: expression(this.offsetParent.scrollLeft+20); COLOR: #ffffff; LINE-HEIGHT: 150%; POSITION: absolute; ; TOP: expression(this.offsetParent.scrollTop+10); BACKGROUND-COLOR: #7f1ef6"></div>
最好放置在开头,紧随<Body>之后,理由么,就是在这个位置看着顺眼...
在<head></head>中加入脚本:
1
var closetime;
2
3
function showmsg(msg,showtime)
4

{
5
var md=document.getElementById("msgdiv");
6
md.innerHTML =" "+msg+" ";
7
md.visibility = "visible";
8
if(closetime)window.clearTimeout(closetime);
9
closetime=setTimeout(hiddenmsg,showtime*1000);
10
}
11
12
function hiddenmsg()
13

{
14
var md=document.getElementById("msgdiv");
15
md.innerHTML = "";
16
md.visibility = "hidden";
17
}
其中, msg是要显示的信息,而showtime是信息要显示的秒数;
这个function是我自己用的时候随手弄的,还有很多问题, 适用性不是很强, 用的时候需要注意
posted @ 2006-03-18 09:28 Amnoh 阅读(840) 评论(0)
编辑
这几天被病毒弄得很头痛, 乱找的时候发现了一个小站
http://free5.ys168.com/?endurer
上边有几个小工具不错,做个记号
posted @ 2006-02-25 15:15 Amnoh 阅读(59) 评论(0)
编辑
使用DataList绑定时,出了一个让人百思不得其解的错误:
本来EditCommand,DeleteCommand都好好的,运行很正常,突然间就出不再响应,点edit 和 delete对应的按钮木有反映,只是刷新页面,不进入“状态”,设置断点察看,editcommand和deletecommand根本没有触发.
一路Ctrl+Z后,代码返回初始状态,按说该没问题了吧。。。可他还是没有响应。
后来发现,如果新建一个页面,再把代码拷过去,则新页面工作正常。
由于时间紧,第一次时没太在意,使用新页面就算了(汗,比较懒的说),可后来这个问题有出来了,只好认真对待了。。。。经观察,如果在EditCommand事件处理程序已经写过了的话,在EditItem中添加一个新的runat=server的控件就会导致EditCommand和DeleteCommand事件无法触发,这时即使撤销,问题依旧。
后来发现,如果新建页面后,直接拷贝全部代码(当然,类名等是改了的)的话,问题并不能解决,而我第一次能解决,是因为在属性管理其中通过双击先添加了EditCommand等事件的处理程序,再把里边的代码考了过去,是不是因为这个呢??
说干就干。。。没想到真是这样。。。。。
最后发现,如果添加了新控件,只要在属性管理器中,选择该DataList,然后选择它的EditCommand,DeleteCommand后的框框,双击鼠标,跳到代码页面后什么都不用改,保存,再Ctrl+F5则一切OK。
郁闷啊。。。这是不是VS2003的一个Bug,或者是俺那个*版有问题。。。
posted @ 2005-11-13 21:51 Amnoh 阅读(148) 评论(1)
编辑