2017-04-19 19 views
1

私はカスタムスクリプトを使用しているWordPressを使用しています。 実際に特定のテンプレートを持つWPページでは、カスタムスクリプトを呼び出す必要があります。Jqueryエラーa.indexOfは関数ではありません

とその与えるエラーa.indexOfは関数ではありません。ファイルは以下のcus.js あるとJavaScript

私のカスタムは、私は、スクリプトが特定のテンプレートを持つページがあるときにのみ機能するようにしたいので、私は、次のコードを使用してい

のfunctions.phpでそのコード

$(window).on('load', function(){ 

    alert('hsdsdsi'); 
     $(".disabled").each(function(index, element){ 
      alert('hsdsdsiasdasdfasfaf'); 


     alert(element.closest("li").attr('class')); 
     }); 
    }); 

ですロードされる。

add_filter('template_include', 'my_load_script_for_template', 1000); 
function my_load_script_for_template($template){ 
    if(is_page_template('template-topcharts.php')) 
     wp_enqueue_script(get_template_directory_uri() . '/js/cus.js'); 

return $template; 
} 

そして、すべてのスクリプトが、私は次のコード

function rehub_framework_register_scripts() { 

    wp_register_script('cus', get_template_directory_uri() . '/js/cus.js', array('jquery', 'rehub'), '1.0.0', true); 
} 

を追加したが、エラーが

enter image description here

+0

'警告(element.closest( "LI")のattr( 'クラス'));' - 'element'です。 domオブジェクトでは、 'nearest()'メソッドを持たない – billyonecan

+0

$(this).closest( "li")。attr( 'class')? – smarttechy

+0

ええ、または '$(要素).closest(... – billyonecan

答えて

0

このcustom.js他のファイルに来ている登録取得されている別の関数rehub_framework_register_scripts()でエラーはしばしば、互換性のないjQueryバージョンによって発生します。

$(document).ready(function(){ 
    alert('hsdsdsi'); 
     $(".disabled").each(function(index, element){ 
      alert('hsdsdsiasdasdfasfaf'); 


     alert(element.closest("li").attr('class')); 
     }); 
    }); 
+0

私はこの回答を見ましたが、jqueryをもう一度追加していません。 – smarttechy

0

変更は、これを試して、

function rehub_framework_register_scripts() { 

    wp_register_script('cus', get_template_directory_uri() . '/js/cus.js', array('jquery'), '1.0.0'); 
} 
関連する問題