if语句后的Jquery回调
jquery callback after if statement
大家好,我在某些情况下很难找到创建回调的帮助。
我有一段代码,加载链接页面到iframe,然后改变scr,如果另一个链接被按下。
$(".iframe").hide();
$(".lnk").click(function(){
$(".iframe").show('slow')
;})
;
$(".frmclose").click(function(){
$(".iframe").hide('slow')
;})
;
上面的代码在(document).ready中运行下面是在这之外(由于某种原因它不能在里面工作)
function changeIframeSrc(id, url) {
if (!document.getElementById) return;
var el = document.getElementById(id);
if (el && el.src) {el.src = url;return false;}return true;}
链接:
<a href="http://www.google.com" onclick="return changeIframeSrc('ifrm', this.href)" class="lnk">google</a>
在此之前,我将iframe所在的div变为未隐藏的。我也有一个按钮在div隐藏div + iframe。
我遇到的问题是,一旦iframe已经打开,然后通过div链接关闭,如果它是通过点击不同的链接重新打开iframe隐藏显示旧的页面,然后改变。但我想要的是框架加载新页面(而隐藏),然后取消隐藏显示它。我想在iframe src改变后使用回调,但我看不到我会在哪里实现它。
发生的例子(点击GDPH按钮查看iframe的链接)
任何想法或帮助,感谢。
对
B碎石机我认为你所需要做的就是在<iframe>
关闭时清除src
。这将清除页面,以便下次您显示iFrame时,它将再次开始为空白。
我做了一个小演示这个功能,使用3个链接从你的页面为例。<iframe>
开始隐藏(通过CSS),每个链接将显示<iframe>
,然后加载远程站点。我添加了一个关闭iframe链接来模拟您在您的网站上的<iframe>
下的关闭链接。
希望这对你有帮助!
Edit:更新演示链接以包含回调部分。我在看问题的时候漏掉了这一点!
编辑2:你的changeIframeSrc
函数没有工作是因为它是在jQuery匿名函数中定义的,并且是一个闭包。参见从javascript中调用Jquery函数
我将捕获iframe的.load()
事件,这将在文档加载到iframe后触发。
$(".iframe").load(function { /* code to run when iframe is loaded */ });
- Mapbox,无法在jquery回调中设置GeoJSON
- Jquery回调函数执行多次
- lazyload jquery 回调函数
- 将其绑定在 backbone.js 中的 jQuery 回调中
- 如何获取 jQuery 回调触发返回值
- jQuery回调-严格违反
- 如何在表单提交后进行Jquery回调
- jQuery回调函数累积
- 将 this 应用于 jQuery 回调
- 创建一个 jQuery 回调函数
- 在 JavaScript / jQuery 回调中使用“this”更改单击元素的文本
- 使用 jQuery 回调参数通过 AJAX 调用 PHP 函数
- jquery回调没有响应
- jQuery回调函数在循环之前触发最后一行
- jQuery 回调在声明完成时不触发:
- JQuery 回调工作
- 带有参数的 JQuery 回调 - 新手
- JavaScript jquery回调累积
- 用作 Jquery 回调时匿名函数与命名函数的内存开销
- 如何知道jQuery回调函数中有哪些参数可用,如何理解它并添加参数