Bug Tracker

Opened 11 years ago

Closed 9 years ago

#3592 closed bug (fixed)

append() evaluates script tags with non-script types

Reported by: zach Owned by: flesler
Priority: minor Milestone: 1.3
Component: manipulation Version: 1.2.6
Keywords: Cc:
Blocked by: Blocking:

Description

Using $(document).append(content) will strip out all script tags from content and attempt to evaluate them. This throws errors when the script tag contains content other than JavaScript, even when the type attribute of the script tag is set appropriately. Normal browser behavior is to ignore such content and not try to evaluate it, but append() is inconsistent with this.

I added an exception for my specific case (text/html content for use with John's micro-templating[1]) so the script tag would not be stripped and I found no issues when appending (IE6/7/8b2 on IETester, Chrome, FF3/2 linux, Opera 9.51 linux.)

It would be useful for append() to follow the behavior of browsers regarding script tags and only attempt to evaluate scripts when the type is missing or is a recognized script mime type (text/javascript or application/javascript.)

[1]: http://ejohn.org/blog/javascript-micro-templating/

Attachments (1)

jquery-patch.diff (515 bytes) - added by zach 11 years ago.
the patch I'm using

Download all attachments as: .zip

Change History (3)

Changed 11 years ago by zach

Attachment: jquery-patch.diff added

the patch I'm using

comment:1 Changed 10 years ago by dmethvin

Component: unfilledcore

comment:2 Changed 9 years ago by Rick Waldron

Component: coremanipulation
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.