0
下面的腳本檢測到iframe上的點擊並返回一條消息。
我希望iframe在檢測到點擊時自動關閉。如何在點擊時關閉iframe?
\t \t \t $(window).on('blur',function(e) {
\t \t \t \t if($(this).data('mouseIn') != 'yes')return;
\t \t \t \t $('iframe').filter(function(){
\t \t \t \t \t return $(this).data('mouseIn') == 'yes';
\t \t \t \t }).trigger('iframeclick');
\t \t \t });
\t \t \t $(window).mouseenter(function(){
\t \t \t \t $(this).data('mouseIn', 'yes');
\t \t \t }).mouseleave(function(){
\t \t \t \t $(this).data('mouseIn', 'no');
\t \t \t });
\t \t \t $('iframe').mouseenter(function(){
\t \t \t \t $(this).data('mouseIn', 'yes');
\t \t \t \t $(window).data('mouseIn', 'yes');
\t \t \t }).mouseleave(function(){
\t \t \t \t $(this).data('mouseIn', null);
\t \t \t });
\t \t \t $('iframe').on('iframeclick', function(){
\t \t \t \t console.log('Clicked inside iframe');
\t \t \t \t $('#result').text('Clicked inside iframe');
\t \t \t });
\t \t \t $(window).on('click', function(){
\t \t \t \t console.log('Clicked inside window');
\t \t \t \t $('#result').text('Clicked inside window');
\t \t \t }).blur(function(){
\t \t \t \t console.log('window blur');
\t \t \t });
\t \t \t $('<input type="text" style="position:absolute;opacity:0;height:0px;width:0px;"/>').appendTo(document.body).blur(function(){
\t \t \t \t \t $(window).trigger('blur');
\t \t \t \t }).focus();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<iframe width="350" height="250" src="http://omarjackman.com/about/" ></iframe>
<div id="result"></div>