2014-11-02 30 views
0

我有以下代碼的問題。jquery單擊並懸停在不同的元素上的事件,以影響相同的元素不工作?

$(document).ready(function(){ 
    $('#icon2').click(
    function(){ $('#st1').animate({top:'-10px'},500);} 
); 
    $('#down1').hover(
    function(){ $('#st1').stop(true, false).animate({bottom:'+=250px'},10000,'linear');}, 
    function(){ $('#st1').stop(true, false).animate({bottom:'-=0px'},10000,'linear');} 
); 
}); 

從下面的圖片,

#DOWN1向下箭頭下面的文字

#ICON2圖標

enter image description here

我想要實現的是當我將鼠標懸停在向下箭頭上時,文本應向下滾動,當鼠標懸停時,應停止滾動。當我點擊關於圖標時,文本應該回滾到默認位置。

但這裏的問題只有一個效果是工作懸停或點擊,但不是一次。

如果可能,請幫助我在哪裏做錯了一些詳細的解釋。

的jsfiddle:http://jsfiddle.net/g1patnaik/ycvfrgwd/1/

+0

請你添加一個jsfiddle?或一個片段? – Dwza 2014-11-02 07:33:53

+0

我不想看到現場代碼...我想有一個平臺,在那裏我可以添加一些東西,可能爲您提供解決方案:)我不需要周圍的東西:) – Dwza 2014-11-02 07:37:05

+0

@Dwza http:// jsfiddle。 net/0f3hdm9h/1/ – 2014-11-02 08:10:00

回答

2

顯然你已經做出了律錯誤...

試試這個

$(document).ready(function(){ 
    $('#icon2').click(
    function(){ $('#st1').stop(true, false).animate({bottom:'0px'},500);} 
); 
    $('#down1').hover(
    function(){ $('#st1').stop(true, false).animate({bottom:'+=250px'},10000,'linear');}, 
    function(){ $('#st1').stop(true, false).animate({bottom:'-=0px'},10000,'linear');} 
); 
}); 

我只是改變了動畫top動畫bottom。在你的懸停你設置底部樣式,所以你真的應該做同樣的關於點擊。否則底部pos將仍然存在。我會測試這個,但我不能,因爲你只能用你的orininal代碼頁提供了我;)

其實這個作品:JSFIDDLE

(編輯:改變了OPS源評論)

+0

我已經改變它up..and這裏是jfiddlet。 http://jsfiddle.net/0f3hdm9h/1/,但仍然無法正常工作! :( – 2014-11-02 08:01:22

+0

是的,它的工作原理和通過在點擊功能停止(真,假),以避免延遲 – 2014-11-02 08:37:06

相關問題