2012-02-24 12 views
1

このコードは、単純なサイトの別のページで水平および垂直スライダコントロールに使用しています。 IEとFirefoxのすべてのページで動作します。 SafariとChromeの1ページで失敗します。そのページにはAJAXコントロール(Facebook共有用のポップアップ)があります。スクリプトマネージャとAJAXコントロールを削除すると、jQueryスクリプトが完全に実行されました。Safari/ChromeでjQueryが動作しないページでAJAXコントロールを使用する

このスクリプトを修正して、ページ上のAJAXコントロールで実行するにはどうすればよいですか?ここで

はスクリプトです:私はあなたが既知の互換性のバグに遭遇したと思います

<script> 
var over = false; 
var intervalID = 0; 
$("#btn_Right").hover(
    function() { 
    over = true; 
    DoMove("Left"); 
    }, 
    function() { 
    over = false; 
    clearInterval(intervalID); 
    } 
); 

$("#btn_Left").hover(
    function() { 
    over = true; 
    DoMove("Right"); 
    }, 
    function() { 
    over = false; 
    clearInterval(intervalID); 
    } 
); 

function DoMove(direction) { 
    var interval = 600; 
    intervalID = setInterval(function() { 
    if (over) 
     MoveFrames(direction); 
    }, interval); 
} 

function MoveFrames(direction) { 
    var itemWidth = 175; 
    var viewFrameWidth = parseInt(document.getElementById('ViewFrame').style.width); 
    var containerWidth = parseInt(document.getElementById('Container').style.width); 
    var CurrentPos = parseInt(document.getElementById('Container').style.marginLeft); 
    if (CurrentPos % itemWidth == 0) { 
    if ((direction == "Left" && CurrentPos <= -(containerWidth - viewFrameWidth)) || (direction == "Right" && CurrentPos >= 0)) { 
     clearInterval(intervalID); 
    } 
    else { 
     if (direction == "Left") { 
     $("#Container").animate({ marginLeft: '-=175' }, 400); 
     } 
     else if (direction == "Right") { 
     $("#Container").animate({ marginLeft: '+=175' }, 400); 
     } 
    } 
    } 
} 

+0

私はあなたのスクリプトマネージャおよびAJAXコントロールのid何であったか、スクリプトがすべての方法アニメイトコードに実行されますが、何も起こらない... – John

+0

ことを追加するのを忘れ? – Har

+0

ScriptManager1 ...それは問題でしょうか? – John

答えて

関連する問題