Bug Tracker

Ticket #9615 (closed bug: invalid)

Opened 4 years ago

Last modified 4 years ago

replaceWidth does not work with document.createElement

Reported by: JorisDebonnet Owned by:
Priority: low Milestone: 1.next
Component: manipulation Version: 1.6.1
Keywords: Cc:
Blocking: Blocked by:

Description

I noticed that the documentation page on replaceWidth had an example that didn't work as expected. I emailed the webmaster suggesting that it might be a bug, and he wasn't sure so he removed the example and suggested I'd check up on it.

It did:

$("p").replaceWith(document.createElement("div"));

 http://jsfiddle.net/pja8D/

Note that this jsFiddle uses jQuery 1.3.2: that's where it still works as expected. As soon as you use any version higher than that, it no longer works. Rather than replacing every individual element, it replaces all of them by a single element. This problem only occurs if you use the document.createElement function.

( Which is of course not the easiest way, it makes more sense just putting "<div/>" there, but I suppose the other way should still work. )

Change History

comment:1 Changed 4 years ago by timmywil

  • Priority changed from undecided to low
  • Resolution set to invalid
  • Status changed from new to closed
  • Component changed from unfiled to manipulation
  • Version changed from git to 1.6.1

This is a feature so that existing elements can be moved rather than duplicated. As you noticed, the intended effect can be done with "<div>" so that elements are created internally.

Note: See TracTickets for help on using tickets.