好的,诚然,这是我第一次使用 java 脚本和 jQuery。我正在尝试显示一个<p> </p>
标签,将其淡出,然后淡入另一个。淡出部分工作得很好,但之后其他标签不显示。您可以看到容器的边框更改大小以适应更大的文本区域,但您看不到文本。第 22-23 行是文本应该淡入的地方。我查看了 jQuery 文档,但似乎找不到原因。我尝试将.css
调用放在表达式的前面,但我得到的只是文本弹出而不是淡入。我从网上的一个来源得到了这个想法,并试图改变它以适应我的需要。正如你现在看到的那样,我最终重写了整个内容。这是我的代码。
// JavaScript Document
var i = 1;
$(document).ready(function () {
jQuery.fn.timer = function () {
var $quote = $('#quote')
var number = $('#quote').children('p');
$quote.children('p').eq(i - 1).animate({
opacity: 0
}, 1000, function () {
$quote.children('p').eq(i - 1).css({
'display': 'none',
'visibility': 'hidden'
});
}).delay(1000);
i++;
if (i > number.length) {
i = 1;
}
$quote.children('p').eq(i - 1).animate({
opacity: 100
}, 1000, function () {
$quote.children('p').eq(i - 1).css({
'display': 'block',
'visibility': 'visible'
});
});
};
window.setInterval(function () {
$('#quote').timer();
}, 10000);
});
我的带有样式的 html 如下所示:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="jQuery_V_1.9.1.js"> </script>
<script type="text/javascript" src="quotes_3.js"> </script>
<style>
#quote{
background: white;
border: 2px solid #333;
display: block;
margin: 0 auto;
padding: 10px;
width: 100px;
}
#quote p{
color: #333;
display: none;
font-weight: bold;
text-align: center;
display: none;
visibility: hidden;
}
#quote p:first-child{
display: block;
visibility: visible;
}
</style>
</head>
<body>
<div id="quote">
<p> Funny stuff happens with Java script </p>
<p> this is turning out to be more work than I thought it would be!!</p>
<p> I like Java more!!</p>
</div>
</body>
</html>
任何想法,将不胜感激。我在 6 小时前开始使用无法编译的东西。好像我可以制作一个动画 gif 来获得相同的效果,哈哈。
(编辑)我终于得到了要显示的文本,但是没有淡入效果。但是容器正在增长以容纳所有三个<p> </p>
标签。为什么是这样?