1

モーダル ダイアログが 1 つしかない場合 Safari でも機能します。この場合、以下に示すようにデフォルトの jqModal セレクターを使用しています

HTML

<a href="#" class="jqModal">Start Demo 1</a>

<div class="jqmWindow" id="dialog"> Demo 1 </div>

JS

$('#dialog').jqm({modal:true});

しかし、複数のリンクを追加して別々のダイアログを開くと、サファリでは機能しません。他のすべてのブラウザで動作します。

複数のダイアログの HTML コード

<a id="startDemo1" href="#">
  <h3 class="demo-heading">Demo 1</h3>
</a>
<div id="Demo1" class="jqmWindow">
  <p>Demo 1</p>
</div>

<a id="startDemo2" href="#">
  <h3 class="demo-heading">Demo 2</h3>
</a>
<div id="Demo2" class="jqmWindow">
  <p>Demo 2 Let's see if it launches new dialog</p>
</div>

Javascript

$(document).ready(function(){   

    $('div.jqmWindow').jqm({modal:true, overlay: 50, trigger: false})

    $('#startDemo1').click(function() {
        $('#Demo1').jqmShow();
        return false;
    });

    $('#startDemo2').click(function() {
        $('#Demo2').jqmShow();
        return false;
    });

});

複数のモーダル ダイアログを実装するための解決策またはより良い方法があれば教えてください。

4

1 に答える 1

2

投稿したJSコードを修正したかっただけです

$('div.jqmWindow').jqm({modal:true, overlay: 50, trigger: false})

になるはずだった

$("Demo1").jqm({modal:true, overlay: 50, trigger: false})
$("Demo2").jqm({modal:true, overlay: 50, trigger: false})

しかし、Safari で 2 つのモーダル ダイアログを起動できません。

他のすべてのブラウザは動作しています。以前は、間違った JS でも何らかの形で機能していました。

于 2011-01-14T21:04:42.730 に答える