ok, с удалением тяжеловато.. вернее, много лишних движений будет.
предлагаю такой вариант: по клику на нужный элемент (слово) присваиваем ему id = "clicked". дальше всё тоже самое, с поиском вхождения :) после нужных действий — атрибут удалить) |
Я пока просто свой текст в <b> менял на временный уникальный код, потом искал позицию этого текста, и брал символы до и после него, после чего менял текст обратно (единственный минус - может дёрнуться экран от временного изменения текста).
А всё же - что я не правильно делал убирая обёртку? И почему я не вижу параметра jQuery######### внутри <B> при коде: $('b').click(function() { $(this).wrap('<strong>'); alert($(this).parent().html()); }); |
ну, если обертка убирается — всё делаете так :)
а jQuery######### — это, имхо, что-то вроде временной транзакции или типа того, которая используется только самой библиотекой, поэтому её не видно нигде, кроме как в отладчиках. я бы не стал заморачиваться по этому поводу. |
Так нет же... я наоборот пишу что обёртка не убирается...
Ставлю через wrap, а убрать не могу... Делают так: <p>Наша Маша громко плачет <b>уронила</b> в реку мячик...</p> <script src=jQuery.js></script> <script> $(document).ready(function() { $('b').click(function() { $(this).wrap('<strong>'); x=$(this); z=$(this).parent(); z=x; alert($('p').html()); }); }); </script> Но <strong> всё равно остаётся :( |
блин, вот что значит воскресенье..
не надо ничего заменять и присваивать.. $(this).unwrap('<strong>'); |
Цитата:
<div>Hello, <strong id="e">%username%</strong>! I need your bike and clothes.</div> <script> document.getElementById('e').onclick = function () { alert([ 'Current node content: ' + this.innerHTML, 'Preceding text: ' + this.previousSibling.nodeValue, 'Succeeding text: ' + this.nextSibling.nodeValue ].join('\n')) } </script> |
T-sh,
Хорошо, а в чём была моя ошибка? Почему не получалось перекинуть текущий объект в родителя? |
Цитата:
да и по логике, так сделать нельзя, ибо неизвестно куда денутся другие дочерние элементы у родителя, если они есть. |
Часовой пояс GMT +3, время: 08:20. |