<div style="position:absolute;top:200px;">
<div id="t1" style="width:100px;height:100px;background:pink;"></div>
<div id="t2" style="position:absolute;top:0px;width:50px;height:50px;background:orange;"></div>
</div>
用js事件onclick处理#t1 #t2
当点击#t2,触发#t2与#t1的onclick目前情况是点击#t2,只触发#t2的onclick,#t1的局部被#t2覆盖,没有触发

解决方案 »

  1.   

    //在t2Div 的onclick函数中添加
    var t1Div = document.getElementById("t1");
    t1Div.click();
    试试看,行不行.
      

  2.   


    <div style="position:absolute;top:200px;"> 
    <div id="t1" style="width:100px;height:100px;background:pink;">t1</div> 
    <div id="t2" style="position:absolute;top:0px;width:50px;height:50px;background:orange;">t2</div> 
    </div> 
    <script type="text/javascript">
    var t1  = document.getElementById("t1");
    var t2  = document.getElementById("t2");
    t1.onclick = function()
    {
    alert("t1 click");
    }t2.onclick = function()
    {
    alert("t2 click");
    t1.click();
    }
    </script>
    不过这样在FireFox下面是不行的
      

  3.   

    嗯,改了一下,这样就都兼容了
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"><head>
    <meta content="zh-cn" http-equiv="Content-Language" />
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
    <title>星期一</title>
    </head><body>
    <div style="position:absolute;top:200px;"> 
    <div id="t1" style="width:100px;height:100px;background:pink;">t1</div> 
    <div id="t2" style="position:absolute;top:0px;width:50px;height:50px;background:orange;">t2</div> 
    </div> 
    <script type="text/javascript">
    var t1  = document.getElementById("t1");
    var t2  = document.getElementById("t2");
    t1.onclick = function()
    {
    alert("t1 click");
    }t2.onclick = function()
    {
    alert("t2 click");
    if(window.event)//如果是IE
    t1.fireEvent("onclick");
    else//不是IE
    {
    var e = t1.ownerDocument.createEvent("MouseEvent");
    e.initEvent("click",false,true);
    t1.dispatchEvent(e);
    }
    }
    </script>
    </body></html>
      

  4.   

    t2.onclick = function()
    {
        alert("t2 click");
        t1.click();
    }
    这样也许在IE下可行,但是把t1藕荷到t2里了我想通过某种事件注册的方式解决。事件传播相关
      

  5.   

    那有这样的一个需求,你看能不能提供些思路<div id="layer1" style="width:400px;height:80px;position:absolute;">
    <ul>
    <li><a href="#">Link</a></li>
    <li><a href="#">Link</a></li>
    <li><a href="#">Link</a></li>
    <li><a href="#">Link</a></li>
    </ul>
    </div><div id="layer2" style="width:400px;height:80px;position:absolute;"></div>大体按意思写的。
    如果layer2完全覆盖在layer1上,怎么样能使layer1的链接在FF与IE下都能正常有效
      

  6.   

    <script type="text/javascript"> 
    window.onload = function(){
    var t1 = document.getElementById("t1"); 
    var t2 = document.getElementById("t2");taa = function() { alert("t1 click"); }
    t1.onclick = taa;
    t2.onclick = function() { alert("t2 click"); taa() }}
    </script><div style="position:absolute;top:200px;">
    <div id="t1" style="width:100px;height:100px;background:pink;"> </div>
    <div id="t2" style="position:absolute;top:0px;width:50px;height:50px;background:orange;"> </div>
    </div> 
      

  7.   

    CSDN挂了一段时间还挺麻烦楼上的代码可以使用,但是离需求还差一点
    准确的描述下一个带连接的<ul>列表(position),在它的上边完全覆盖一个透明的<div>(position),这时在IE下是能够触发底层的连接,而在FF下,由于隔着透明的<div>层,无法触发连接,这个问题如何解决呢?示例见
    http://maczone.sk 的 中部滚动信息连接,只是个实现的结果,不是实现的途径,望高手看下