Internet Explorer 9 (8 ?) iframe 删除后不显示 display:none
Posted
技术标签:
【中文标题】Internet Explorer 9 (8 ?) iframe 删除后不显示 display:none【英文标题】:Internet explorer 9 (8 ?) iframe doesn't show up after removing display:none 【发布时间】:2016-10-17 17:14:14 【问题描述】:如果我在没有“display:none”的情况下将 iframe 与谷歌地图一起放置,它会正确显示,但是当我在 css 类中添加 display:none 然后我用 jquery 将其删除时,带有地图的 iframe 不会显示。
html:
<div id="kontakt_siedziba">
<iframe id="mapa_siedziba" class="hidden" src="https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d10163.095243410511!2d16.666852538623033!3d50.44531365108525!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0x3d08e591f3fac383!2sJatax+Sp.+z+o.o.!5e0!3m2!1spl!2spl!4v1466029556470" frameborder="0" style="border:0" allowfullscreen></iframe>
</div>
CSS:
iframe#mapa_siedziba
float: right;
.hidden
display: none;
#kontakt_siedziba, #kontakt_baza
height: 140px;
border: 0px solid #007fff;
border-radius: 5px;
transition: padding 1s;
.unfolded_map
padding: 20px;
脚本:
<script>
var clicked=0;
$(document).ready(function()
$("#siedziba").click(function()
if(clicked==0)
$("#kontakt_siedziba").addClass("unfolded_map").animate(
height: '300px',borderWidth: '4',
function() $("#mapa_siedziba").fadeIn(500, function()
clicked=1;
); );
else if(clicked==1)
$("#mapa_siedziba").fadeOut(1000, function()
$("#kontakt_siedziba").animate(
height: '140px',borderWidth: '0',
function()
clicked=0;
).removeClass("unfolded_map") ;
);
);
);
</script>
我也尝试了 removeClass 而不是淡入,但它也不起作用
【问题讨论】:
也许可以尝试另一种隐藏方式,而不是display:none
。 sitepoint.com/five-ways-to-hide-elements-in-css
【参考方案1】:
你可以尝试两种方法:
-
将 iframe 包装到 div 中并隐藏/取消隐藏 div
删除 iframe dom 元素并读取它
例子
var detachedItem = $('#mapa_siedziba').detach();
setTimeout(function()
$("#open_menu").click(function()
$("#kontakt_siedziba").append($detachedItem);
);
, 4);
【讨论】:
1.不,它仍然不起作用:/ 2. 我不明白,你是什么意思? 您可以尝试将其从 dom 中删除并读取,而不是隐藏它 如何实现?使用 php 添加或删除整个 iframe 行? 我已经添加和示例 "在此处输入代码" - 我应该在这里粘贴整个 iframe 吗?我还添加了一个带有 id="open_menu" 的按钮来测试它,但它什么也没做。我认为我做错了什么?以上是关于Internet Explorer 9 (8 ?) iframe 删除后不显示 display:none的主要内容,如果未能解决你的问题,请参考以下文章
在 Internet Explorer 9 中更改域名后,Ajax 停止工作
如果浏览器不是 Internet Explorer 9 或更高版本,则显示一条消息
在同一台计算机上运行 Internet Explorer 6、Internet Explorer 7 和 Internet Explorer 8
为啥即使在模拟 Internet Explorer 8 文档模式时,Internet Explorer 11 也不支持条件注释?