您的位置:首页 > Web前端 > JavaScript

js中window.createPopup()方法以及attachEvent("onmouseover",OverFuncOne)实例

2012-05-28 14:40 435 查看
<html>
<body>
Internet Explorer 5.5支持一个新的window对象的方法:creatPopup()。你可以向下面一样创建一个弹出窗口:
<br>
  var popupObj = window.createPopup();
<br>
  当你创建了这个对象后,弹出窗口并不显示。你必须要调用它的show方法:
<br>
  popupObj.show(yOffset, xOffset, width, height, referenceObj)
<br>
  在这里:
<br>
  yOffset 是弹出窗口距离屏幕左上角的水平偏移。
<br>
  xOffset 是弹出窗口距离屏幕左上角的垂直偏移。
<br>
  width 是弹出窗口的宽度。
<br>
  height 是弹出窗口的高度。
<br>
  referenceObj 是一个可选参数,它替代屏幕左上角做为引用yOffset 和 xOffset 的参照。
<br>
<script>
var oPopup=window.createPopup();

function MoveIn(){
oPopup.document.body.innerHTML=mydownDiv.innerHTML;
var top=document.getElementById("mytext").offsetHeight;

oPopup.show(0,top, 300, 100, mytext);//前面4个参数相对于mytext的位置
//oPopup.show(0,top, 300, 100, null);//前面4个参数相对于整个屏幕
childChangeDiv(oPopup.document);
}

function childChangeDiv(dd){
var fa=dd.body.childNodes.item(0);
var parentDiv=fa.childNodes;
for(i=0;i<parentDiv.length;i++){
//alert(parentDiv.item(i).innerHTML);
//ie下绑定事件
parentDiv.item(i).attachEvent("onmouseover",OverFuncOne);
parentDiv.item(i).attachEvent("onmouseout",OutFuncTwo);
}
}

function OverFuncOne(){
for(var i=0;i<oPopup.document.body.childNodes.item(0).childNodes.length;i++){
var v1=oPopup.document.body.childNodes.item(0).childNodes.item(i);
v1.style.backgroundColor="#FF0000";
}
}

function OutFuncTwo(){

for(var i=0;i<oPopup.document.body.childNodes.item(0).childNodes.length;i++){
var v1=oPopup.document.body.childNodes.item(0).childNodes.item(i);
v1.style.backgroundColor="#e4e4e4";
}
}

</script>

<br><br><br>
搜索:
<input type="text" id=mytext onfocus="MoveIn()" style="width:550px" />
<br>
<br>
<div id=mydownDiv style="Display:none">

<div style="PADDING-RIGHT: 10px; PADDING-LEFT: 10px; LEFT: 0px; OVERFLOW-X: hidden; PADDING-BOTTOM: 10px;

SCROLLBAR-HIGHLIGHT-COLOR: #99ccff; OVERFLOW: scroll; WIDTH: 300px; SCROLLBAR-ARROW-COLOR: white; PADDING-TOP:

10px; BORDER-BOTTOM: black 2px solid; SCROLLBAR-BASE-COLOR: #3366cc; POSITION: absolute; TOP: 0px; HEIGHT:

100px; BACKGROUND-COLOR: #e4e4e4">
<div ondblclick="parent.mytext.value=this.innerText;parent.oPopup.hide();">
新闻</div>
<div>体育</div>
<div>手机</div>
<div>电影</div>
</div>

</div>

</body>
</html>


想到想用attachEvent("onmouseover",OverFuncOne)的第二个参数能不能传递参数,答案是可以的,

下面是一个成功的例子,但在上面那个例子中却实现不了,不知为什么。js学的不好阿,还得努力。

<input   name= "HB ">
<input   name= "HB2 "   value= "HAHA ">
<script   language=javascript>
function   HBfunction(obj)
{
alert(obj.value) ;
}

obj=document.getElementById( "HB2 ") ;
var vv=document.getElementById( "HB ");
vv.attachEvent( "onclick",new Function( "HBfunction(obj)") ) ;

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐