> $.find("body").attributes;
ну охуеть теперь) с NamedNodeMap так приятно работать.. > Array.prototype.forEach.call( attributes,.. $( attributes ).each( ... но факт остаётся фактом - через jq нельзя получить список аттрибутов элемента. можно лишь получить сам элемент и через его апи получить этот список, а потом завернуть список обратно в jq. > поподробней а что тут не понятно? > так, чтобы не посбивались обработчики (addEventListener, не делегированные) и ссылки на существующие элементы, которые существуют наравне с обычным текстом. разумеется, и чтобы состояние контролов и позиция каретки чтобы не менялась) > он и так слишком толстый, все предусмотреть не возможно есть такая вещь как модульность, про которую разработчики jq видимо не слышали |
bes, всё хорошо, вот только не все вхождения находит
<head> <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <style> my_found { background: yellow; } </style> <script src="http://code.jquery.com/jquery-latest.min.js"></script> <script> jQuery(function ($) { $('button').click(function(){ alert($('body').html()) return false }) $('body').find(':contains("jquery")').contents() .filter(function () { return this.nodeType == 3; }) .add ($('body').contents() .filter(function () { return this.nodeType == 3 && this.nodeValue.indexOf('jquery') != -1 }) ).each(function () { var str = this.nodeValue.replace(/(jquery)/g, '<my_found>$1</my_found>'); $(this).replaceWith(str); }); }); </script> </head> <body> <div>jquery text1</div> <b>j</b>Query <a href="jquery.com"> text2 <span> text3 jquery <button>jquery text</button> </span> </a> </body> |
Цитата:
и здесь href="jquery.com" тоже должен найти? |
первый очевидно да, второй очевидно нет
|
Цитата:
но об этом мы уже говорили страницу - две назад ) |
TextNode тут не особо поможет. нужно использовать TextRange
|
Цитата:
Цитата:
|
Часовой пояс GMT +3, время: 01:34. |