2014-11-06 104 views
0

我有一個div#im1,其起始位置爲left:-300px; 當點擊按鈕.abtme_link時,javaScript將其位置更改爲443px; 它在Firefox以外的瀏覽器上工作;我在這個問題上看到了一些其他的帖子,但似乎無法使其工作; 其中一個線程得出結論認爲,css轉換在Firefox上不起作用,如果是這樣的話;有沒有解決方法?CSS轉換不適用於Firefox

#im1{ 
    width:400px; 
    position:absolute; 
    left:-300px; 
    transition:all .9s ease .5s; 
    -webkit-transition:all .9s ease .5s; 
    -moz-transition:all .9s ease .5s; 
    -o-transition:all .9s ease .5s; 
    -ms-transition:all .9s ease .5s; 
} 

$('.abtme_link').click(function() { 
     $('#im1').css('left','443px'); 
    }); 
+1

你能爲此生成一個jsFiddle嗎? – jcera 2014-11-06 04:25:39

+0

請在這裏添加html並創建小提琴 – 2014-11-06 04:30:16

+1

在我的mozilla中它的工作正常,動畫也由mozilla支持。你可以提供你讀過的鏈接嗎? – 2014-11-06 04:31:01

回答

0

行,所以我已經找到了解決辦法,

我在JS添加延遲功能,它的正常工作。不知道爲什麼或如何,但它的工作。

setTimeout(function(){ 
      $('.im1').css('left','443px'); 
     },10); 
+0

好的,這很有道理。延遲會導致CSS轉換延遲。你也可以嘗試在這裏刪除'.5s'延遲:'transition:all .9s ease /*.5s remove * /' – misterManSam 2014-11-06 05:59:38

+0

是的,我會那樣做的。雖然我仍然不明白爲什麼我必須在mozilla中使用手動延遲,而不是在其他瀏覽器中使用手動延遲。 但是,至少它現在正在工作,我終於可以入睡了。 :) – 2014-11-06 06:03:04