ログイン資格情報が正しい場合は空である変数に基づいて、ログインフォームをシェイクしようとしています。この変数はmsg
.
このjsfiddle の例(実行をクリックしてテストすると揺れます) が表示された場合、問題なく動作しますが、アプリケーションで使用しようとすると、エラーが発生し$this is not defined
ます$this.css({
。
コードを書き$(this).css({
ましたが、コンソールにエラーが表示され$this.css({
ます。
ユーザーが間違った資格情報を入力したときのようにサーバー側から変数を取得しているため、変数で何もする必要がないことに注意して$message
ください。を使用してこの状態を確認しましたalert box
。
アプリケーションで jQuery 1.7 を使用しています。
私のアプリで使用されるコードは次のとおりです。
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html;">
<script type="text/javascript" src="xyz/js/jquery.js"></script>
<script type="text/javascript">
$(function() {
$("input:text:visible:first").focus();
var msg = "$message"
if (msg.length!==0){
alert("message is not empty");
jQuery.fn.shake = function(intShakes, intDistance, intDuration) {
this.each(function() {
$(this).css({
position: "relative"
});
for (var x = 1; x <= intShakes; x++) {
$(this).animate({
left: (intDistance * -1)
}, (((intDuration / intShakes) / 4))).animate({
left: intDistance
}, ((intDuration / intShakes) / 2)).animate({
left: 0
}, (((intDuration / intShakes) / 4)));
}
});
return this;
};
$('#login').shake(2, 13, 250); } });</script>
</head>
<body class="login login-action-login wp-core-ui">
<div id="wrapper">
<div id="login">
<form name="form_login1" action="$action" method="post">
<input type="hidden" name="command" value="login">
<p><label>Username<br>
<if condition="enable_password_cookie">
<input type="text" name="login2" value="$login_from_password_cookie" onchange="document.form_login2.login.value = this.value" id="user_login" class="input" size="20" tabindex="1">
</if>
<else>
<input type="text" id="user_login" class="input" name="login2" size="20" onchange="document.form_login2.login.value = this.value">
</else>
</label></p>
</form>
<form name="form_login2" action="$action" method="post">
<input type="hidden" name="login">
<input type="hidden" name="command" value="login">
<input type="hidden" name="extra_param" value="$extra_param">
<p>
<label>Password
<input type="password" name="password" is="password" id="password" class="input" value="" size="20">
</label>
</p>
<p class="submit">
<input type="submit" value="Login" onclick="javascript:submit_login();" id="wp-submit" class="button button-primary button-large">
</p><br><br>
<p class="error">$message</p>
</div><br>
</form>
</div>
</div>
</html>
PS: キャッシュを消去しようとしましたが、それでもこのエラーが発生します: http://i.imgur.com/TNBgQM8.png
編集 2: キャッシュとすべてのブラウザー データを消去しましたが、$(this).css
それでも$this.css
. わからない どうして?:/