Brandon committed that change, but I wrote it. Unfortunately, I don't have
Mac here so I can't test with Safari.
jQuery.trim only trims leading/trailing space, so the newlines between the
<li> elements would be untouched. If there are no newlines it works?
Is it crashing right on line 1568, or is it lower down where it pulls the
elements out of arg?
Perhaps it is dying on the "if" right below that? No reason for it to do
that but who knows. Instead of letting it fall into the loop replace line
1568 (arg = div.childNodes) with this:
for ( var n = 0; n < div.childNodes.length; n++ )
r.push(div.childNodes[n]);
return;
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Klaus Hartl
Sent: Wednesday, October 25, 2006 9:17 AM
To: jQuery Discussion.
Subject: [jQuery] Critical fix: clean lets Safari crash under
certaincircumstances
Hi all,
with the latest Revision the clean function lets Safari crash under certain
circumstances (I had to fix that for Plazes):
There is an <ul> to which some <li> elements should be appended. These <li>s
are loaded via XHR as text/html and are appended in the success function
like this:
success: function(html) {
$('#photos').append(html);
}
The server returns an HTML snippet like the following:
<li>...</li>
<li>...</li>
Important: there is a line break after the closing li tag. In the clean
function, on line 1568 there is the following code:
arg = div.childNodes
which returns a node list containing the children (first level) of the
temporary div, of the form:
[<li>, Text \n , <li>, Text \n, ... ]
The line-break text nodes are causing Safari to crash completely!
I fixed that by changing line 1568 to this:
arg = $('>*', div).get();
Not sure if that is the best solution. Maybe the trim function does not work
correct?
If solution is OK, I'd commit that...
-- Klaus
_______________________________________________
jQuery mailing list
[email protected]
http://jquery.com/discuss/
_______________________________________________
jQuery mailing list
[email protected]
http://jquery.com/discuss/