2
モーダルの後に埋め込まれたGoogleマップのサイズ変更に関するセマンティックUIモーダルのもう一つの質問が表示されます。数回試してみたところ、モーダルのコールバックが表示されたり表示されたりする問題を単純化しました。セマンティックUIモーダルonShow/onVisibleは機能しませんか?
運がありません。 onShowまたはonVisibleは常にグレー表示されます。ここでは抜粋です:
$('.ui.modal')
.modal({
onVisible: function() {
console.log("hahaha");
}
}).modal({
onApprove: function() {
console.log("hehehe");
}
}).modal('attach events', '#btn-show');
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.1.8/semantic.min.css" rel="stylesheet"/>
<!--Load JS libaries; Order is important and Load Jquery first -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.1.8/semantic.min.js"></script>
<button class="ui button" id="btn-show">
Show modal
</button>
<div class="ui modal">
<!--<i class="close icon"></i>-->
<div class="header">
Mark your project on the map
</div>
<div class="content">
<p>Content</p>
<div class="actions" style="text-align: right">
<div class="ui deny button" id="btn-close-modal-1">
Cancel
</div>
<div class="ui approve orange right labeled icon button" id="btn-open-modal-2">
Next
<i class="chevron right icon"></i>
</div>
</div>
</div>
</div>
はありがとうございます!出来た!それがなぜそうであるか説明できますか? – Jie
これはjavascript多相の副作用でなければなりません。私の推測は、いくつかの '.modal({...})'呼び出しを連鎖させ、最後の呼び出しで渡されたパラメータオブジェクトはすべて前のものを再定義し、指定されていないすべての値は 'undefined'に設定されます。そのパラメータはオブジェクトではないので、 '.modal( 'ビヘイビア'、...)のケースではありません。 – Kemi
説明をありがとう! – Jie