1

クローム v. 26.0.1410.64

jQuery v. 1.7.1

jQueryUI v. 最新

web アプリは asp.net webforms を使用して構築されています

  • ページが一番上にあるときに、ダイアログが正常に開き、すべてが意図したとおりに機能します。ダイアログをドラッグしても問題ありません。ページが下にスクロールされている場合、ダイアログをドラッグしようとすると、ダイアログの上部css プロパティが垂直スクロール量の値だけ大きくなります。これは Google Chrome でのみ発生しています。

これは、モーダル ポップアップを開く関数の一部です。

    var $dialog = $('<div id="dialogIframe" title="Some title"></div>')
    .html('<iframe id="jqueryIframe" style="border: 0px;" src="' + page + '"
    width="99%" height="99%"></iframe>')
    .dialog({
        autoOpen: false,
        modal: true,
        height: height,
        width: width,
        resizable: false,
        draggable: true,
        buttons: dialog_buttons,
        close: function (event, ui) {
            $('#dialogIframe').remove();
        }
     });

     $dialog.dialog('open');
  • 私は他の誰かのコードに取り組んでいます。何がこの種の動作を引き起こす可能性があるのか​​ わかりません。何がこの種の動作を引き起こす可能性がありますか?

編集: - jQuery バージョン: 1.9.1 に切り替えると、Google chrome で期待どおりに動作しますが、最新の IE9 と FF (古い jQ バージョンで適切に動作していた) で同じ問題が発生するようになりました。

編集 2: - この問題は Web フォームの MaintainScrollPositionOnPostback ページ プロパティに関連している可能性があると感じていますが、従来の方法で無効にしたり false に設定したりすることはできません: aspx ページでは、同じページのコード ビハインド、マスターページ、web.config、これはすごい

4

1 に答える 1

0

クロムで同じ問題があり、それを解決しました

           open:function(){
            $('body').addClass('stop-scrolling')
        },

    beforeClose: function( event, ui ) {
        $('body').removeClass('stop-scrolling')
    },

私のダイアログは非常に小さいので、これはうまくいきますが、画面上のスペースよりも多くのコンテンツがダイアログにある場合、問題が発生する可能性があります

CSSクラスは次のようになります

 .stop-scrolling {
 height: 100%;
 overflow: hidden;
}

体がスクロールするのを防ぎます

于 2013-04-23T11:27:23.437 に答える