我有一个按钮,只需使用javascript即可打开和关闭iframe。
但是当我点击按钮而不是iframe消失时,该按钮也会随着iframe一起消失。
在检查firebug控制台时,按钮的CSS也会将显示参数更改为' none'。
$(document).ready(function(){
var iDiv = document.createElement('div');
iDiv.id = 'enigma';
iDiv.setAttribute("style", "font-size:18px;position:fixed;bottom:20px;right:5px;display:inline");
document.body.appendChild(iDiv);
var div = document.createElement("div");
div.innerHTML = '<iframe src="http://example.com/index.html" width="400" height="200" style="border:0"></iframe>';
iDiv.appendChild(div);
var div2 = document.createElement("div");
div2.setAttribute("style","display:inline;");
div2.innerHTML = '<button id="button2">Show/Hide</button>';
document.body.appendChild(div2);
setTimeout(function() {
$("#button2").css({"position": "fixed", "display": "inline", "bottom": "0", "right": "0"}).click(function(){
$("div").toggle('show');
});
}, 100);
});
答案 0 :(得分:2)
单击该按钮时,运行
$("div").toggle('show');
切换页面中的所有div
。这包括包含按钮的那个。您可以将id添加到要隐藏的div中以使其正常工作:
var div = document.createElement("div");
div.id = "to-toggle";
...
setTimeout(function() {
$("#button2").css({"position": "fixed", "display": "inline", "bottom": "0", "right": "0"}).click(function(){
$("#to-toggle").toggle('show');
});
}, 100);
答案 1 :(得分:1)
$("div").toggle('show');
切换所有 <div>
元素。
也许你想要
$("iframe").toggle('slow');
或者更具体一点,根据Iluvatar's answer
向您尝试控制的元素添加id
答案 2 :(得分:0)
你需要在这里更具体......
$("div").toggle();
您目前定位每个div标记。