0

好的,我在我的网站上有一个表单搜索,单击该搜索结果会将搜索结果加载到显示的隐藏 iframe 中。这是 iframe:

<iframe class="slidingDiv" id="frame-content-left2" name="search-box" 
        src="content.html"></iframe>

这是切换显示状态开/关的按钮:

<input type="submit" value="Search" class="send-button" />

现在,当上面的 iframe 显示带有网站导航链接加载到的页面内容的 div 时,它就会消失。这是div:

<div id="myDiv">some content here</div>

现在我有一点问题,因为当我单击左侧的导航时,您看不到它加载到的 div,因为它是隐藏的。我想要的是以某种方式告诉带有搜索结果的 iframe,一旦我在链接或空白区域之类的东西上单击它之外就会消失,从而制作这个 div:

<div id="myDiv">some content here</div>

再现。

这是我正在使用的代码:

<script type="text/javascript">
$(document).ready(function() {

    $('.send-button').click(function() {
        if ($('#frame-content-left2').is(':visible')) {
            $('#frame-content-left2').hide(2000);
            $('#myDiv').show(2000);
        }
        else {
            $('#frame-content-left2').show(2000);
            $('#myDiv').hide(2000);
        }

    });
});

4

1 回答 1

0

将单击侦听器附加到文档并查看事件的目标。如果目标是应该让 div 出现的东西,让它出现。

$(document).click(function(e){
    if(e.target.id !== 'myDiv'){
        $('#myDiv').show();
    }
});

某种程度的东西将执行您正在寻找的操作。

于 2012-07-02T18:32:00.873 回答