Я знаю, что вы имеете в виду.с .html()
вы просто получаете строку с тем, что находится внутри выбранного элемента, и вы не можете связывать события или подобные вещи с помощью твердого JavaScript, когда вы выбираете элемент с помощью jQuery или jQuery, тогда .html()
.
Когда вы определяете переменную для селектора jQuery, она не совпадает с той, которую вы определяете для сплошного JavaScript.
$('body') == document.getElementsByTagName('body')[0]
//false
с помощью .html()
не решит вашу проблему:
('body').html() == document.getElementsByTagName('body')[0]
//false
.html()
дает вам строку, равную тому, что находится внутри элемента:
$('body').html() == document.getElementsByTagName('body')[0].innerHTML.toString()
//true
Дело в том, что селекторы jQuery всегда возвращают массив, который содержит каждый элемент, соответствующий данному событию запроса, если ваш запрос возвращает один элемент, он возвратитмассив с одним элементом.Поэтому, выбрав любой элемент из каждого массива селектора jQuery, вы получите фактический элемент DOM.
$('body')[0] == document.getElementsByTagName('body')[0]
Попробуйте это в своем инструменте разработчика браузера, чтобы увидеть результат!: D