试图了解一个jquery示例

时间:2013-06-24 09:39:59

标签: jquery

   <!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>

以上代码摘自:http://api.jquery.com/event.preventDefault/

问题:

  1. function(event),我知道这里的事件意味着:点击,但点击对象如何将值传递给此参数:event?

  2. $('<div/>')
    .append('default ' + event.type + ' prevented')
    .appendTo('#log');
    
  3. 我知道append()appendTo(),但仍然很难理解这一行,$('<div/>')表示创建<div/>?通常我只会看到这种风格:$('div').append(),任何人都可以向我解释这一行吗?感谢。

4 个答案:

答案 0 :(得分:2)

当触发事件时,jQuery会自动传递event参数的对象。

$('<div/>')将创建一个新的<div></div>元素。

.append('default ' + event.type + ' prevented')会在新创建的div中添加“默认点击已阻止”,因此它会变成<div>default click prevented</div>

.appendTo('#log');会将上面的整个div附加到#log元素,即如果您将#log元素视为<div id="log"></div>,则它将变为

<div id="log">

    <div>default click prevented</div>

</div>

答案 1 :(得分:2)

$('div').append('...')

这里'div'选择器将搜索已经在DOM中的所有DIV并将内容附加到它们。

$('<div/>').append('...')

在这里,我们创建包含在jquery对象中的新元素DIV并向其追加内容。 这与:$('<div>').append('...')$('<div></div>').append('...')只是语法更改相同。

您仍然需要向DOM添加新创建的元素。通常,您可以使用.appendTo(elementInDOM)方法。

答案 2 :(得分:1)

这是创建div元素的快捷方式,其中包含append()语句的文本。此DIV将附加到您的#log元素。 另一个例子供您理解:

$('<div />').html('This is a simple text-string').appendTo('body');

长形将/可能是:

$('<div>After this point comes a new string:<br /></div>').html('This is a simple text-string').appendTo('body');

答案 3 :(得分:1)

<强>第一

event不仅意味着点击,它可以是任何事件,如keyup,keydown,mouseover,mouseout,

另外,如果想要从点击的事件中获取值,请使用$(this)

所有Events

的列表

<强>第二

$('div').append('text');

会附加文字to the selecter $('div')和 在你的问题中,你正在创建一个div,然后在其中附加一些显示行

的文本
$('<div/>').append('default ' + event.type + ' prevented')

然后是appended#log