刚刚准备写一个无缝滚动的JQUERY的程序,但setInterval()总是不执行,劳驾帮帮忙

haokan1113 2014-06-25 11:30:58
style.css
.wrap{
position:relative;
}
.wfgd{
border:1px solid #fff; width:600px; height:155px; position:absolute; left:0; top:0;
}



content.php
<table border='0' cellspacing='0' cellpadding='0'>
<tr>
<td><img src="<?echo base_url('application/views/css')?>/img/photos.png" width='155' height='180'></td>
<td class='wrap'>
<ul class="wfgd"> //想让这里的ul做从右往左的无缝滚动
<li class='xiangkuang'><div><img src="<?echo base_url('application/views/css')?>/img/11.png" width='155' height='155'></div></li>
<li class='xiangkuang'><div><img src="<?echo base_url('application/views/css')?>/img/11.png" width='155' height='155'></div></li>
<li class='xiangkuang'><div><img src="<?echo base_url('application/views/css')?>/img/11.png" width='155' height='155'></div></li>
<li class='xiangkuang'><div><img src="<?echo base_url('application/views/css')?>/img/11.png" width='155' height='155'></div></li>
</ul>
</td>
</tr>
</table>






js.js

$(function(){
var hdp=$('.wfgd');
oulhtml=hdp.html();
hdp.html(oulhtml+oulhtml);

setInterval("lgd()",30);

function lgd(){
//alert(1); //像函数里如果只写alert(),就是正常的,但后面的移动命令就完全没反应, 求助
hdp.css("left","+=-10px");
}
});
...全文
155 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Cocl 2014-06-25
  • 打赏
  • 举报
回复
var left = parseInt(hdp.css("left"))-10;
hdp.css("left", left+"px")
Cocl 2014-06-25
  • 打赏
  • 举报
回复
hdp.css("left","+=-10px");
jq不是这么玩的
haokan1113 2014-06-25
  • 打赏
  • 举报
回复
引用 5 楼 jslang 的回复:
[quote=引用 1 楼 a274295732 的回复:]
hdp.css("left","+=-10px");
jq不是这么玩的
从jQuery1.6开始,.css()接受类似于.animate()的相对值。相对值时以+= 或者 -=开头的字符串,表示递增或递减当前的值。 例如,如果一个元素的左边填充(padding-left)是10px的,.css( "padding-left", "+=15" )将返回总的左填充(padding-left )为25px。 [/quote] 谢谢,看到你说到JQUERY1.6开始才能用+=,原因是因为我用的JQUERY文件还是1.3.2min的,刚刚更新了一下就好了,分全给你了,太谢谢了
天际的海浪 2014-06-25
  • 打赏
  • 举报
回复
引用 1 楼 a274295732 的回复:
hdp.css("left","+=-10px");
jq不是这么玩的
从jQuery1.6开始,.css()接受类似于.animate()的相对值。相对值时以+= 或者 -=开头的字符串,表示递增或递减当前的值。 例如,如果一个元素的左边填充(padding-left)是10px的,.css( "padding-left", "+=15" )将返回总的左填充(padding-left )为25px。
天际的海浪 2014-06-25
  • 打赏
  • 举报
回复
lgd函数在闭包内,从外面是找不到的 setInterval("lgd()",30);//是定时器到时间后从全局环境下找lgd函数,但是lgd函数在闭包内,从外面是找不到的 改成 setInterval(lgd,30);//是在设置定时器时就获取了lgd函数的引用,不用从外面找了
巴山虎 2014-06-25
  • 打赏
  • 举报
回复
-10px jquery的负数一般不起作用。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧