首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >() Safari问题

() Safari问题
EN

Stack Overflow用户
提问于 2014-04-22 14:57:22
回答 1查看 1.4K关注 0票数 0

我有一个奇怪的问题,它只存在于Safari浏览器中。我的DOM非常复杂,我试图创建一个Jsfiddle,但是我把所有的事情都搞砸了,所以如果可能的话,我想请别人登录我的网站。我将非常感激。

链接:http://www.Lynxapp.io

用户名: demo@demo.com

密码:演示

在你点击Chrome,Opera,甚至是最新的IE中的'Test 1‘或'Test 2’之后,子元素toggle()就很好了。在Safari中,它们也会切换,但是DOM不会因为某种原因而“向下移动”-换句话说,子元素只是显示出来,但是底部的元素不能很好地向下滑动。

这是切换元素的代码:

代码语言:javascript
复制
$(".small").children(".topics").hide()


$(".small").click(function() {
    $(this).children(".topics").toggle("slide", {direction: "up"});
});

我知道这是一个简单的问题,但我甚至不知道从哪里开始调试,因为这个特性在其他浏览器(除了Safari)中工作得很好。

再次为没有创建Jsfiddle而感到抱歉,但是我的DOM有点混乱,所以我无法在Jsfiddle创建一个好看的工作示例。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-22 15:41:38

Safari尊重父级的高度(在本例中,使用.small的按钮)为40 in。因此,当您切换打开的东西在这些,它并没有增加父母超过40 So。因此,父容器.subject的大小不会增加。要理解我的意思,请将.small的css改为:

代码语言:javascript
复制
.small{
    width: 90%;
    height: auto;
    margin-top: .5em;
}

这并不完全是您想要的效果,但是要使它在Safari中工作,您可能需要考虑将.topics div移到.small按钮之外,以便他们是兄弟姐妹。

就像这样:

代码语言:javascript
复制
<div class="custom_button white small"></div>
<div class="topics"></div>
<div class="custom_button white small"></div>
<div class="topics"></div>

你的jQuery:

代码语言:javascript
复制
$(".small").next(".topics").hide()

$(".small").click(function() {
    $(this).next(".topics").toggle("slide", {direction: "up"});
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23223122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档