私が使用しているコードは次のとおりです。
jQuery(document).ready(function($) {
$('.addNew').click(function(event) {
event.preventDefault();
openEditor(event);
}); /* END ADD CLICK */
$('.editLink').click(function(event) {
event.preventDefault();
openEditor(event);
}); /* END EDIT CLICK */
/* DEFINE THE EDITOR OPEN LATER */
$('.viewer').dialog({
fullscreen: true,
show: "pulsate",
width: $(window).width()-20,
height: $(window).height(),
autoOpen: false
}); /* END OPEN EDITOR */
}); /* END DOCUMENT READY */
function openEditor(event) {
jQuery(document).ready(function($) {
$('.viewer').load(window.location.pathname + 'edit.php');
var x =event.pageX - ( $(document).scrollLeft() - 100 );
var y =event.pageY -$(document).scrollTop();
$('.viewer').dialog('open');
}); /* END DOCUMENT READY */
} /* END OPENEDITOR FUNCTION */
ダイアログ ボックスは最初は正常に開きますが、[閉じる] ボタンをクリックするか、エスケープ キーを押してダイアログ ボックスを閉じると、2 回目は開きません。これは、コンソールに表示されるエラー メッセージです。
TypeError: $(...).dialog is not a function
[Break On This Error]
$('.viewer').dialog('open');
私はもともと autoOpen: false を使用していませんでしたが、これが問題だと思っていましたが、この方法に切り替えても同じエラーが発生しました。
何か案は?
アップデート:
私はもう少し掘り下げてきましたが、 $('.viewer').load('filename'); が原因のようです。ライン。何らかの理由で、ビューアーを一度しか開くことができません。