js 兼容问题 本帖最后由 Sun771037278 于 2012-02-28 16:33:30 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 function out() { if (window.event.toElement.id != "layer1") layer1.style.display = "none"; }中toElement是IE专用有,需要有兼容写法:在方法中写入event作参数,然后使用var target=event?event.target:window.event.srcElement;取得事件对象,接着对target.id作判断,试试吧. window.onload = function () { layer("Span1"); } function layer(id) { var layer1 = document.createElement("div"), elem = document.getElementById(id); layer1.id = "layer1"; // ........ layer1.innerHTML = "layer"; layer1.style.display = "none"; elem.parentNode.appendChild(layer1); addEvent(layer1, 'mouseout', function(event){ var e = event || window.event, relatedElement = event.relatedTarget || event.toElement; if(relatedElement.id != "layer1"){ layer1.style.display = "none"; } }); addEvent(elem, 'mouseover', function(){ layer1.style.display = "block"; }); } function addEvent(el, eventType, fn) { if (el.addEventListener) { el.addEventListener(eventType, fn, false); } else if (el.attachEvent) { el.attachEvent("on" + eventType, fn); } else { if(!el.eventHandle){ el.eventHandle = []; } el.eventHandle.push(fn); var arr = el.eventHandle; el["on" + eventType] = function(event){ for(var i = 0, len = arr.length; i < len; i++){ arr[i](event); } } } } 直接用jquery,浏览器兼容问题就交给jquery了 要想快就学习学习jquery吧,省事 关于阴历和阳历的转换 javascript多维数组的定义方法 请问怎么样将一个table的行拖到另一个table上去? 点击单选按钮实现隐藏和显示 用window.showModalDialog打开的子窗口如何将数据用form提交给自己 如何验证特定的文本框中输入的是否为数字? document.readyState == "complete"是什么意思? 可以用js得到某个页面的内容吗? 请问如何通过SCRIPT来控制窗口最大化? js异步传参出现问题 求助!如何实现JS判断鼠标在特定DIV之内移动之后执行某个函数 如何取这图片的高?
if (window.event.toElement.id != "layer1")
layer1.style.display = "none";
}中toElement是IE专用有,需要有兼容写法:在方法中写入event作参数,然后使用var target=event?event.target:window.event.srcElement;取得事件对象,接着对target.id作判断,试试吧.
layer("Span1");
}
function layer(id) {
var layer1 = document.createElement("div"),
elem = document.getElementById(id);
layer1.id = "layer1";
// ........
layer1.innerHTML = "layer";
layer1.style.display = "none";
elem.parentNode.appendChild(layer1);
addEvent(layer1, 'mouseout', function(event){
var e = event || window.event,
relatedElement = event.relatedTarget || event.toElement;
if(relatedElement.id != "layer1"){
layer1.style.display = "none";
}
});
addEvent(elem, 'mouseover', function(){
layer1.style.display = "block";
});
}
function addEvent(el, eventType, fn) {
if (el.addEventListener) {
el.addEventListener(eventType, fn, false);
} else if (el.attachEvent) {
el.attachEvent("on" + eventType, fn);
} else {
if(!el.eventHandle){
el.eventHandle = [];
}
el.eventHandle.push(fn);
var arr = el.eventHandle;
el["on" + eventType] = function(event){
for(var i = 0, len = arr.length; i < len; i++){
arr[i](event);
}
}
}
}