2

私は初心者で、jQuery API ドキュメントの event.preventDefault のサンプル コードに混乱しています。

<!DOCTYPE html>
<html>
<head>
    <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>

<a href="http://jquery.com">default click action is prevented</a>
<div id="log"></div>

<script>
$("a").click(function(event) {
    event.preventDefault();
$('<div/>')
    .append('default ' + event.type + ' prevented')
    .appendTo('#log');
});
</script>

</body>
</html>

ここで append() と appendTo() の両方が使用されているのはなぜですか? 1つで十分ではないでしょうか?$('<div/>')単に の代わりに自己閉鎖が使用されるのはなぜ$('<div>')ですか?

4

2 に答える 2

3
$('<div/>').append('default ' + event.type + ' prevented')

テキストが追加された div を返します。

そして、この div 自体が'#log'要素に追加されます。

関数呼び出しの連鎖は、2 つの関数を使用すると便利です。

ドキュメントから:

.append() および .appendTo() メソッドは同じタスクを実行します。主な違いは構文、特にコンテンツとターゲットの配置にあります。.append() では、メソッドの前にあるセレクター式は、コンテンツが挿入されるコンテナーです。一方、.appendTo() を使用すると、コンテンツは、セレクター式またはその場で作成されるマークアップとしてメソッドの前に置かれ、ターゲット コンテナーに挿入されます。

あなたの2番目の質問によると、はい、$('<div>')の代わりに使用できまし$('<div/>')たが、目的(要素全体を追加する)は後者でもう少し明白です。

于 2013-05-29T19:53:26.050 に答える