2016-12-14 2 views
0

На моей странице с двумя iframe iframe-menu и iframe-content. Я хочу скрыть iframe-content элементов ('.options') в любом месте события click на всей странице i.e за пределами .options div.JQuery - Скрыть содержимое iframe на главной странице тела нажмите

Главная:

<body> 
    <iframe src="menu.html" id="iframe-menu" height="100%"></iframe> 
    <iframe src="content.html" id="iframe-content" height="100%"></iframe> 
</body> 

content.html в IFrame-контента

<div class="container"> 
    <div class="options">Hello</div> 
</div> 

У меня есть использовать код JQuery. Но он работает только при нажатии на текущий iframe.

$(document.body).click(function(event) { 
    var target = $(event.target); 
    if (!target.parents().andSelf().is('.options')) { 
     $('.options').hide(); 
    } 
}); 

Я хочу скрыть div.options в любом месте, щелкнув по главной странице.

+2

Возможного дубликат [JQuery нажмите на все, кроме div и его детей] (http://stackoverflow.com/questions/12690 313/jquery-on-click-on-everything-but-a-div-and-its-children) – Roberrrt

ответ

0

Лучший способ заключается в использовании .hide()

$('body').click(function(event) { 
    if (!$(event.target).hasClass('.options')) { 
     $(".test").contents().find(".options").hide(); 
    } 
}); 

Попробуйте установить имя класса для фрейма & скрыть элемент, используя .content().find()

Проверить JSFiddle

JSFiddle

+0

Ваш код работает для скрытия элемента главной страницы, и я хочу скрыть элемент внутри iframe. –

+0

Отредактировал мой ответ! – Andy