Tôi muốn truy xuất một phần tử thẻ nhất định với các thuộc tính của nó từ DOM. Ví dụ, từnhận thẻ mở bao gồm các thuộc tính - outerHTML mà không cần innerHTML
<a href="#" class="class">
link text
</a>
Tôi muốn nhận <a href="#" class="class">
, tùy chọn với một đóng </a>
, hoặc như là một chuỗi hoặc một số đối tượng khác. Theo ý kiến của tôi, điều này sẽ tương tự như việc truy xuất .outerHTML
mà không cần .innerHTML
.
Cuối cùng, tôi cần điều này để bao bọc một số phần tử khác thông qua jQuery. Tôi đã thử
var elem = $('#some-element').get(0);
$('#some-other-element').wrap(elem);
nhưng .get()
trả về phần tử DOM bao gồm nội dung của nó. Cũng
var elem = $('#some-element').get(0);
$('#some-other-element').wrap(elem.tagName).parent().attr(elem.attributes);
thất bại như elem.attributes
trả về một NamedNodeMap
mà không làm việc với jQuery attr()
và tôi đã không thể chuyển đổi nó. Thừa nhận rằng các ví dụ trên không có ý nghĩa lắm vì chúng cũng sao chép ID không còn là duy nhất của phần tử nữa. Nhưng có cách nào dễ dàng không? Cảm ơn rất nhiều.
Chỉ cần sao chép nút bằng '.clone()', sau đó xóa nó bằng '.html()' và xóa 'id' và bạn muốn gì khác. – kirilloid
$ ("a"). Clone(). Empty(). Attr ("outerHTML"); Để giải quyết vấn đề đầu tiên – Tuscan
Cảm ơn @kirilloid, hãy đoán josh chỉ nhanh hơn;) –