1

noty プラグインのclickに不可解な問題があります。サイトで説明されているように通知機能を作成すると、すべて正常に動作しますが、ボタンから「onClick」イベントで呼び出される関数に同じステートメントを入れると、動作しません。ボタンを押してもnoty-notificationもエラーも何も起きません。noty-thing を削除して通常の「アラート」ステートメントを追加すると、すべて正常に動作します。見逃したものはありますか、それともバグですか?

元のコードは次のようになります。

<head>
<script type="text/javascript" src="ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript" src="js/noty/jquery.noty.js"></script>
<script type="text/javascript" src="js/noty/layouts/top.js"></script>
<script type="text/javascript" src="js/noty/themes/default.js"></script>
</head>
...
<script>
var noty = noty({text: 'noty - a jquery notification library!'});
</script>

同じステートメントを次の関数に入れると、noty が機能しなくなります。

<head>
<script type="text/javascript" src="ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript" src="js/noty/jquery.noty.js"></script>
<script type="text/javascript" src="js/noty/layouts/top.js"></script>
<script type="text/javascript" src="js/noty/themes/default.js"></script>
</head>
...
<a href="#" onclick="test_function(); return false;" class="btn">klick</a>
...
<script>
function test_function(){
   var noty = noty({text: 'noty - a jquery notification library!'});
}
</script>

var noty前のstackoverflowの質問で述べたように、 to var n(または他の何か)を変更しても何も変わりません。

前もって感謝します。よろしく、ジョン。

4

1 に答える 1

3

次のようなものを使用するとよいでしょう。

<head>
<script type="text/javascript" src="ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript" src="js/noty/jquery.noty.js"></script>
<script type="text/javascript" src="js/noty/layouts/top.js"></script>
<script type="text/javascript" src="js/noty/themes/default.js"></script>
</head>

<script>
$("#element").click(function(){
   var n = noty({text: 'noty - a jquery notification library!'});
});
</script>

<a id="element" href="#" onclick="return false;" class="btn">klick</a>

そしてもちろん、noty にバインドしたい要素に「id」を使用します。それは完全に機能します。

ここで実際の例を確認してください: JSFiddle

于 2013-02-20T18:32:09.990 に答える