【发布时间】:2018-06-29 20:22:33
【问题描述】:
我正在尝试制作一个框,单击该框时会在其上显示一些文本。 很简单,而且可以,但是我不能让文字通过滑动出现;当我尝试这样做时,它以奇怪的动画显示,几乎没有滑动。
我用新代码制作了一个 JSFiddle 版本,效果几乎完美(唯一的问题是文本滑动之前的延迟,我希望它可以更柔和的动画),但我不'不知道我在真实版本中做了什么不同,所以我也把它放在了 JSFiddle 上,所以你可以比较。
测试版: https://jsfiddle.net/5dfazgyw/6/
真正的基于代码的版本: https://jsfiddle.net/188qgqjL/5/ (注意只在动画开始滑动,之后自然出现)
我把我的测试版本放在这里,但最重要的是真正的代码版本:
$('tr').on('click', function() {
$('#table tr td p2').slideToggle()
})
td {
width:350px;
background:teal;
color:white;
padding:30px;
cursor:default;
}
td p {
margin: 20px auto;
}
td p2 {
display:none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<table id="table">
<tr><td>
<p>
LOREM IPSUM
</p>
<p2>
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
</p2>
</td></tr>
<tr><td>
<p>
LOREM IPSUM
</p>
<p2>
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
</p2>
</td></tr>
<tr><td>
<p>
LOREM IPSUM
</p>
<p2>
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
</p2>
</td></tr>
</table>
我真的很想使这个工作,但我无法达到我想要的效果。
【问题讨论】:
-
<p2>是无效的 HTML。 any HTML 版本中没有p2element。 -
@connexo,你觉得会影响滑动吗?我不知道,使用 p2 或 p4 对我来说总是像实际的 HTML 标签一样工作哈哈
-
这可能 a) 在您未测试过的浏览器中并非如此,并且 b) 当浏览器供应商决定停止忽略像您这样的错误时,在未来的任何给定时间点都会发生变化。如果没有先解决类似的问题,我什至不愿意查看代码中的任何其他问题。
标签: jquery html css animation slide