[removed] Whats the difference between 'Document' and 'HTML'

后端 未结 4 1551
一整个雨季
一整个雨季 2021-01-02 16:26

Example:

$(document).click(function() { blah });   
// and
$(\'html\').click(function() { blah });
4条回答
  •  一向
    一向 (楼主)
    2021-01-02 16:52

    I'll answer the question in several parts.

    In JavaScript (not just jQuery, but all JavaScript) the document keyword is a handle on the object that contains the HTMLDocument. You might use this handle in the following scenarios...

    // Get the current web address
    alert(document.location.href);
    

    When you pass the document to jQuery, it parses the document into a jQuery object.

    When you pass the "html" selector to jQuery, it uses this string to find any elements in the document object model that match the selector (in all cases, there will be one html element).

    In reality, you won't notice a difference in behaviour between these:

    $(document).click(function() { alert('blah'); });   
    $('html').click(function() { alert('blah'); });
    $('body').click(function() { alert('blah'); });
    

    But the technical difference is that document is an object and 'html' is a string that is used to search for an element. Both the object and any matching elements are converted into jQuery objects.

    As they all add a click event handler to the "visible" part of the page, which is the only part of the page a user can realistically click on.

提交回复
热议问题