【问题标题】:jquery drop down questionjquery下拉问题
【发布时间】:2011-01-06 21:53:46
【问题描述】:

好的,代码的主要思想就到这里

<table>
    <tr>
        <td id="ddFish"></td>
    </tr>
</table>
<div id="ddRegion">
    <div id="North"></div>
</div>
<div id="nec">
    <div id="necArea"></div>
</div>
<div id="area1"></div>

我需要执行以下操作的 jquery 脚本...我一辈子都想不通

当 td #ddFish 悬停时,显示 #ddRegion。

当#North 悬停时,显示#nec。

当#necArea 悬停时,显示#area1

如果有其他问题请告诉我

【问题讨论】:

    标签: jquery html show-hide


    【解决方案1】:

    你可以为每个元素对做:

    $('#elementID1').mouseover(function() {
        $('#elementID2').show();
    });
    

    或更动态:

    var map = {
        '#ddFish': '#ddRegion',
        '#North': '#nec',
        '#necArea': '#area1'
    }
    
    for(var source in map) {
        $(source).mouseover((function(target) {
            return function() {
                $(target).show();
            };
        }(map[source])));
    }
    

    工作 DEMO - 正如 karim 所说,您必须将代码添加到 ready 事件处理程序。

    【讨论】:

    • 这就是我尝试过的......不工作。我有显示隐藏功能的不错的 exp,但它不起作用.. 我想也许还有另一种写法?
    • @Alex - 当 DOM 准备好时,你是否绑定了你的处理程序?这应该有效。根据您的标记,唯一可行的方法是将处理程序绑定到一个 ID 并显示另一个 ID。 @Felix - 我都没有票了 :(
    • @Felix: 鼠标悬停 --> 鼠标悬停 :)
    • @karim79:我已经达到了极限,所以没关系 ;) :o) 我很欣赏你想象中的支持 :)
    • 嗯,我认为这是我的 jquery 1.3.2 与较新的 1.4.2 的对比。我在其中找到了它并且它可以工作。但现在似乎其他一些元素有点分散 uuuggghhh
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-13
    • 1970-01-01
    • 2012-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-12
    相关资源
    最近更新 更多