关闭iframe内的Facebox
Close Facebox inside iframe
我正在使用这个mod:
http://lnx.shortcutto701.com/2010/05/21/using-iframe-with-facebox-jquery-plugin/我的问题是,我如何使一个按钮是在iframe内关闭facebox。我一直在尝试这种变化:
<button style="height: 50px;" onclick="window.parent.$.trigger('close.facebox')"><span class="button"><span>Cancel</span></span></button>
我是这么做的:
我的页面有一个DIV内的IFRAME
, DIV是什么facebox应该fadeIn
和fadeOut
。IFRAME
的SRC是一个页面,上面有一个链接,看起来像这样:
<a href="#" onclick="parent.close_facebox()">close this facebox modal</a>
在包含DIV和IFRAME
的页面的HEAD
(不是调用到IFRAME
的页面)中,我有JavaScript函数close_facebox()
,看起来像这样:
function close_facebox() { jQuery(document).trigger('close.facebox'); }
。尚未在跨浏览器或生产环境中进行测试。我花了几个小时在谷歌上搜索这个问题,并尝试了各种方法,从将单引号更改为双引号,document-dot-this和parent-dot-that, window.frames['whatever']
,以及这个一行函数。如果您试图从调用到IFRAME
的页面触发函数,则必须确保使用parent.close_facebox()
。希望对你有帮助。
顺便说一句,参见facebox.js版本1.2的第47行和第49行——这个解决方案就在.js文件本身注释掉的"用法"部分。我复制了&将第49行粘贴到我的函数中,除了取消注释外没有改变任何东西:)
self.close()
$('.open').click(function(){
facebox = window.open("",
"facebox","status=1,width=350,height=150");
facebox.document.write('<h1>The Popup Window</h1><p><a onclick="self.close();" href="#">close</a></p>');
});
你需要同时使用父类的jQuery对象和传递父类的文档作为jQuery参数:
parent.$(parent.document).trigger('close.facebox');
相关文章:
- ng视图外的链接重定向到ng视图内的页面
- $ionicplatform内的$scope不;不起作用
- setTimeout可以与闭包内的函数一起使用吗
- 如何在php中的jquery中对循环内的选择框值求和
- href属性内的javascript函数
- 注册OpenLayers事件时,即使使用匿名函数或绑定,JavaScript关闭也会触发循环内的所有内容
- 对角度数据表中括号内的数字进行排序
- Angularjs使用“;这个“;promise内的关键字回调
- Angularjs无法将单选按钮与嵌套范围内的模型绑定
- 如何使用D3生成特定范围内的随机颜色
- ng模型内的ng重复的ng重复开始
- 在android中显示固定高度的webview内的大型内容
- AEM(cq5)使用组件内的信息
- 如何调用表td标记内的Onload函数
- 收集一段时间内的EMG数据.建议JS
- 使用正则表达式选择圆括号内的内容
- 替换p标记内的选定文本
- 向page.includeJs()和page.eevaluate()内的匿名函数传递参数
- 如何在d3.js中填充svg圆圈内的图像
- 关闭iframe内的Facebox