2016-12-23 12 views
1

おはよう、jQuery 1.12.1にアップグレードしたときにオーバーレイが機能しない

WebアプリケーションシステムのjQueryをバージョン1.12.1にアップグレードしています。そして、overlayが新しいjQueryバージョンでは動作していないことがわかりました。

私はajaxを使用してオーバーレイを含むダイアログをポップアウトしています。ここに私のアヤックスコードがあります:

$.ajax({ 
     async: false, 
     url: locurl, 
     data: dataPackage, 
     success: function(result){ 
      createServiceModel(); 
      $("#viewService").dialog({ 
       height: 645, 
       width: 720, 
       resizable: false, 
       modal: true, 
       autoOpen: true, 
       bgiframe: true, 
       overlay: { 
        opacity: 0.4, 
        backgroundColor: "black" 
       } 
      }); 

       $("#serviceContent").append(result); 
     }, 
     error: function (xhr, ajaxOptions, thrownError){ 
      if(xhr.status==403) alert("You are not allowed to proceed due to changes in your profile. Please re-log in again."); 
      else alert("Connection Error. Please try again later. If error persisted, please contact System Administrator."); 
     } 
    }); 

これは私の古いjQueryでうまくいきます。ここで

は、私はクロームのデバッグモードからコピーしたHTMLコードです:

<div class="ui-dialog-overlay" style="border-width: 0px; margin: 0px; padding: 0px; position: absolute; top: 0px; left: 0px; width: 1343px; height: 628px; opacity: 0.4; background-color: red; z-index: 1001;"></div> 

<div class="ui-dialog ui-draggable" tabindex="-1" 
    style="display:block;position:absolute;width:720px;height:645px;overflow:hidden;z-index:1002;outline:0px;top:5px;left:311.5px;;;"> 
    <!-- other html code here --> 
    </div> 

私はui-dialog-overlayui.dialog.jsから見つけることができます実際にあることがわかりました。

しかし、jQuery UI 1.12.1にアップグレードすると、ui-dialog-overlayはjquery-ui.jsに存在しなくなりましたが、ui-dialog-overlaysになりました。

私はhttp://jqueryui.com/download/

から最新のjQueryのjsファイルをダウンロードし、それはAjaxコードでoverlay構文の変更ですか? は私が

overlays: { 
      opacity: 0.4, 
      backgroundColor: "black" 
     } 

しかし、まだ動作していないにそれを「s」を追加することにより、overlayを変更しようとしました。

よろしくお願いします。

+0

'async:false'を削除してください –

+0

@RoryMcCrossan、私は実際には動作しませんでした。 –

+0

直近の問題を修正することはできませんが、とにかく 'async:false'を使うことは非常に悪いことです。コンソールをチェックすると、それを使用しないように警告するメッセージが表示されます –

答えて

0

おはよう、

私自身の解決策が見つかりました。

私はjQueryをアップグレードするだけではありません。しかし、私はjQuery UIとCSSファイルもアップグレードする必要があります。

このケースでは、ui.dialog.cssがまだ古いバージョンであり、オーバーレイクラス名が一致していないため、この問題が発生しました。そのため、オーバーレイ機能が機能しません。

私のui.dialog.cssをアップグレードした後、私の問題は解決しました。

関連する問題