Side navigation
#10593 closed bug (invalid)
Opened October 27, 2011 07:23AM UTC
Closed November 05, 2011 09:54PM UTC
The "href" attribute of <a> element lost when using append() in old IE
Reported by: | abiao.chen | Owned by: | abiao.chen |
---|---|---|---|
Priority: | low | Milestone: | None |
Component: | manipulation | Version: | 1.7b2 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
After calling append() to add a element by passing a string arg which declares an <a> element with both "href" and "onclick" attributes, I found in some IE versions (such as IE <9 on windows server 2003) the "href" attribute was lost.
I traced the execution and found in cloneAttributes() function:
1. Each of src&dest had the "href" attribute at the beganning.
2. All the attributes of dest was cleaned by cleanAttribute().
3. The "href" attribute was missed when merge the src attribute into dest by calling mergeAttributes().
Does this a jQuery or IE problem?
Here is the HTML file:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script type="text/javascript" src="jquery-1.5.min.js"></script> <script> function addcontent() { $("div").append('<a href="javascript:b;" onclick="alert(0)">link3</a>'); } $(document).ready(addcontent); </script> </head> <body> <a href="javascript:x;" onclick="alert(0)">link1</a> <div></div> </body>
Attachments (0)
Change History (3)
Changed November 02, 2011 12:52AM UTC by comment:1
component: | unfiled → manipulation |
---|---|
owner: | → abiao.chen |
priority: | undecided → low |
status: | new → pending |
Changed November 02, 2011 04:31AM UTC by comment:2
status: | pending → new |
---|
I found this bug in IE6 and tried jsFiddle. While in IE6, jsFiddle doesn't work and cannot test this bug. Thus, I paste my code here.
Changed November 05, 2011 09:54PM UTC by comment:3
resolution: | → invalid |
---|---|
status: | new → closed |
The javascript pseudo protocol has many issues in IE6. I recommend steering clear of using it.
Thanks for taking the time to contribute to the jQuery project! Please provide a complete reduced test case on jsFiddle to help us assess your ticket.
Additionally, be sure to test against the jQuery Edge version to ensure the issue still exists. To get you started, use this boilerplate: http://jsfiddle.net/FrKyN/ Open the link and click to "Fork" (in the top menu) to get started.