随笔 - 4  文章 - 0 评论 - 4 trackbacks - 0
<2012年2月>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

昵称:Amnoh
园龄:6年3个月
粉丝:0
关注:0

搜索

 

常用链接

随笔分类

随笔档案

文章分类

最新评论

以前做过一个,但要在<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 = "&nbsp;" + msgstr + "&nbsp;";
    }

    
    
this.createDiv();  //放置此处是为了防止以下的md值为null 
    
    
var closetime;
    
var md = this.msgDiv;
    
this.Show = function(msg,showtime)
    
{
        md.innerHTML 
="&nbsp;"+msg+"&nbsp;";
        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>中加入脚本:

 1var closetime;
 2
 3function showmsg(msg,showtime)
 4{
 5    var md=document.getElementById("msgdiv");
 6    md.innerHTML ="&nbsp;"+msg+"&nbsp;";
 7    md.visibility = "visible";
 8    if(closetime)window.clearTimeout(closetime);
 9    closetime=setTimeout(hiddenmsg,showtime*1000);    
10}

11
12function 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) 编辑