jQuery函数赢得';不适用于特定元素?
我的函数不适用于元素jQuery函数赢得';不适用于特定元素?,jquery,Jquery,我的函数不适用于元素a.left,有人能告诉我这是为什么吗 <section class="slideshow-control" style=""> <a class="left" href="#"> <span>«</span> </a> <a class="right" href="#"> <span>»</span> </a&
a.left
,有人能告诉我这是为什么吗
<section class="slideshow-control" style="">
<a class="left" href="#">
<span>«</span>
</a>
<a class="right" href="#">
<span>»</span>
</a>
</section>
代码中有一些错误,缺少一些变量。 如果我理解您的脚本行为,那么以下JSFIDLE应该可以工作: 您需要设置2项内容并查看html:
<section class="slideshow-wrapper" style="">
<section class="slideshow-control" style="">
<a class="left" href="#"><span>«</span></a>
<a class="right" href="#"><span>»</span></a>
</section>
</section>
左侧和右侧css属性适用于相对/绝对定位元素
然后运行js:
var sc = $('.slideshow-control');
var sw = $('.slideshow-wrapper');
sc.find('a.left').click(function() {
moveBy = parseInt(sw.css("left"))-100;
if(moveBy >= 0)
sw.animate({ 'left': moveBy });
return false;
});
sc.find('a.right').click(function() {
moveBy = parseInt(sw.css("left"))+100;
if(moveBy < $(document).width())
sw.animate({ 'left': moveBy }, 'easeInOutCirc');
return false;
});
var sc=$('.slideshow控件');
var sw=$('.slideshow wrapper');
sc.find('a.left')。单击(函数(){
moveBy=parseInt(sw.css(“左”))-100;
如果(移动比>=0)
设置动画({'left':moveBy});
返回false;
});
sc.find('a.right')。单击(函数(){
moveBy=parseInt(sw.css(“左”))+100;
if(moveBy<$(document).width())
动画({'left':moveBy},'easeInOutCirc');
返回false;
});
我添加了一些控件,以防止元素从文档中消失。
你可以从这里开始,添加一些其他变量,或者用你的行为重写它。你不能用position static设置元素的
left
属性的动画,也许这就是为什么,谁知道呢?。。。无论如何,您必须提供MCVECan您可以在JSFiddle中表示这个问题吗?您知道没有类slideshow wrapper
作为的decentant的元素。slideshow control
,对吧?!和var sc=sc.find('.slideshow控件')代码>真的没有意义。事实上,你的问题有很多地方不对劲。wolf->是的,我知道。幻灯片控件,但我不知道,为什么函数不应用于元素a。左?
var sc = $('.slideshow-control');
var sw = $('.slideshow-wrapper');
sc.find('a.left').click(function() {
moveBy = parseInt(sw.css("left"))-100;
if(moveBy >= 0)
sw.animate({ 'left': moveBy });
return false;
});
sc.find('a.right').click(function() {
moveBy = parseInt(sw.css("left"))+100;
if(moveBy < $(document).width())
sw.animate({ 'left': moveBy }, 'easeInOutCirc');
return false;
});