首先我想說,我真的紅了一大堆類似的教程/指南和其他東西,但沒有一個是有幫助的。我想盡可能簡化滑塊,我認爲我正在一個很好的方式來做到這一點。在製作滑塊時,我遇到了兩個問題,我不知道是否需要修復。 我做了我在這裏的問題的演示http://jsfiddle.net/FJrqS/1/jquery滑塊暫停懸停
第一個問題是在頁面加載,滑塊具有某種滯後,而滑動到右,後幾秒鐘都背上正常。我真的不知道什麼是問題。
第二個問題是,我不知道如何讓這個滑塊停止懸停,並在一個鼠標上繼續停止。
感謝很多提前
首先我想說,我真的紅了一大堆類似的教程/指南和其他東西,但沒有一個是有幫助的。我想盡可能簡化滑塊,我認爲我正在一個很好的方式來做到這一點。在製作滑塊時,我遇到了兩個問題,我不知道是否需要修復。 我做了我在這裏的問題的演示http://jsfiddle.net/FJrqS/1/jquery滑塊暫停懸停
第一個問題是在頁面加載,滑塊具有某種滯後,而滑動到右,後幾秒鐘都背上正常。我真的不知道什麼是問題。
第二個問題是,我不知道如何讓這個滑塊停止懸停,並在一個鼠標上繼續停止。
感謝很多提前
你好希望這是有益演示:http://jsfiddle.net/FJrqS/38/
請讓我知道如果這有助於與否;否則我會刪除我的帖子。 (戴的帽子給你,如果你正在寫全養眼的風格插件:))
1)滑動,因爲你正在使用的像素位置滑動leftpos
是一個引起輕微緩慢我已經做了一個小改變它,似乎有點更好的行爲,然後再玩,你可以玩。
2)您可以使用鼠標懸停和鼠標懸停來啓動和停止循環。 (但是如果你編寫插件,你可能想綁定很多其他的事件)
懸停你可以改變.mouseover
到.hover
但是.mouseover應該做的。
jQuery代碼下面
$(document).ready(function(){
loop();
function loop(){
var sliderRwidth = ($('#sliderR li').length)*200;
var leftpos =(($('#sliderR li').length))-70;
var rightpos = (($('#sliderR li').length)*200)-1000;
var speed = 5000;
$("#sliderR").css('width',sliderRwidth+'px');
$("#sliderR").animate({'left':leftpos+'px'},speed
,function() {
$("#sliderR").animate({'left':-rightpos+'px'},speed
,function(){loop();
})
});
}
//On mouseover stop the slider
$("#sliderR").mouseover(function() {
$(this).stop();
return false;
});
//On mouseout start the slider
$("#sliderR").mouseout(function() {
loop();
});
});
希望這有助於,乾杯!
你知道在'$(this).length'中,'this'是指DOM窗口的權利? – mowwwalker 2012-03-27 23:01:00
是的,我在複製代碼時犯了一個錯誤,我忘了撤銷以前的更改。 – misticx 2012-03-27 23:05:47