2015-08-28 167 views
0

我一直在嘗試添加佔位符到WordPress的主題,我有一個自定義JavaScript文件被正確加載(http://prntscr.com/89vc99)。 的function.phphttp://prntscr.com/89vd6mWordPress添加佔位符登錄輸入

和腳本如下所示:然而沒有什麼變化我想檢查console.log,並得到:

Uncaught ReferenceError: $ is not defined(anonymous function) @ dc-script.js:4

$(document).ready(function(){ 
    $('#user_login').attr('placeholder', 'Username'); 
    $('#user_pass').attr('placeholder', 'Password'); 
}); 

我認爲WordPress是我的腳本如果那之前加載的jQuery也許這個問題?否則這是正確的還是有其他問題嗎?

更新:添加這個到我的functions.php以及更改jQuery在js腳本文件中,這已經解決了這個問題。

//Making jQuery Google API 
function modify_jquery() { 
if (!is_admin()) { 
    // comment out the next two lines to load the local copy of jQuery 
    wp_deregister_script('jquery'); 
    wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js', false, '1.8.1'); 
    wp_enqueue_script('jquery'); 
    } 
    } 

add_action('init', 'modify_jquery'); 
+0

嘗試的jQuery而不是$。 – cgee

+0

嘗試這個沒有工作=( –

+0

然後你需要包括jQuery。http://jquery.com/ – cgee

回答

1

試試這個代碼希望它適合你。

jQuery(document).ready(function(){ 
    jQuery('#user_login').attr("placeholder", "Username"); 
    jQuery('#user_pass').attr("placeholder", "Password"); 
}); 

或者您可以在function.php中添加以下代碼。

add_action('login_enqueue_scripts', 'placeholder', 10); 
    function placeholder() { 
     wp_enqueue_script('script', get_template_directory_uri()'/js/script.js', array('jquery'), 1.0); 
     } 

下面的代碼添加到該文件的script.js

jQuery(document).ready(function(){ 
    jQuery('#user_login').attr("placeholder", "Username"); 
    jQuery('#user_pass').attr("placeholder", "Password"); 
}); 
+0

好吧,現在工作不得不註冊並註冊像你提到的jquery以及將$改爲jQuery(出於好奇,爲什麼不做shortform $工作,爲什麼需要將jQuery寫出來?感謝您的幫助) –

+0

當我們包含jquery時,我們使用這樣的語法'$ ('.class')。attr()'如果jquery不包含,那麼我們使用'jQuery('.class')。attr();' –

0

,這意味着你沒有的jQuery取消你的主題。 您必須先下載latest version of jquery,然後將文件放置在主題的js文件夾中。然後在的functions.php註冊它:

wp_deregister_script('jquery'); 

,然後排隊的jQuery:

wp_register_script('jquery', get_stylesheet_directory_uri()."/js/jquery.js", '', '1.11.2');