しばらくの間、私を悩ませている何か、jQuery APIは言います:
As of jQuery 1.7, the .live() method is deprecated. Use .on() to attach event handlers.
ウィジェット管理側(ウィジェットクラスのform()アクション)にjqueryのものを追加しようとすると、on()を使用できず、live()を使用してジョブを実行できることに驚きました。
だからここに私の質問があります:なぜそして何が私が誤解しているのですか?
よろしく、そしてもちろん、あなたの時間のためのthx。
ps私は>=1.7バージョンを使用してオフカースです。
編集:
<?php
class Test_Slider_Widget extends WP_Widget
{
public function form( $instance ) {
?>
<span id="test">Test</span>
<script>
jQuery(document).ready(function($) {
/* $('#test').on('click', function { //doesn't work
alert('test');
}); */
$('#test').live('click', function { //work
alert('test');
});
});
</script>
<?php }
編集2:わかりました。常に$ this-> get_field_id('id-text')を使用して一意のIDを設定してください。そうしないと、WordPress管理者のウィジェットの重複コードが原因でIDが重複します。道を教えてくれたXecに感謝します:)