I can use PasteMonkey but I don't see how it can help in this case -
what exactly do you want me to paste in it? The line that takes over
20 seconds to execute is the regexp applied to the HTML that's passed
to jQuery constructor. There is no point in editing HTML (I think)
because it is automatically generated by the server and is very
dynamic. I just pasted one example of it. There is no way to predict
all possible combinations of that HTML.

The issue I think is in regexp, or IE performance when applying
regexp. The regexp is in jquery.js.

Are you suggesting that the problem is in the HTML markup I'm trying
to insert into the page?

On Oct 12, 7:12 pm, polyrhythmic <[EMAIL PROTECTED]> wrote:
> Alex,
>
> May I recommend to you PasteMonkey?
>
> http://pastemonkey.org/
>
> Charles
> doublerebel.com
>
> On Oct 12, 11:42 am, koollx <[EMAIL PROTECTED]> wrote:
>
> > I'm trying to use jQuery 1.2.1 to add AJAX functionality to my web
> > application. I am using jQuery Form plugin to submit te form via AJAX
> > and have a server-side algorithm that returns page updates. The server
> > returns a JSON array with HTML elements to be updated and then I loop
> > through that array and process each item. For update, I first remove
> > the existing DOM element, then recreate it using jQuery constructor,
> > and then append it to the parent. It works find in FireFox, but in IE
> > the performance is horrendous. It takes 25 seconds in IE6 and IE7
> > pretty much hangs. I traced the delay to the following line of code in
> > jQuery init method:
>
> >                         var m = quickExpr.exec(selector);
>
> > So it seems that jQuery is to blame for the performance. Is there
> > something I can do to improve it? Is this a bug/issue that needs to be
> > resolved? I'd like to help fix it but I'm not familiar with jQuery
> > design well enough to know why the regexp is there and how we can
> > simplify/remove it. Here's my update code:
>
> >                         var $component = $(state.html);
> >                         $component.appendTo(parent);
>
> > And the HTML that takes particularly long is pasted below (it may look
> > like a large page but it isn't. It loads into the browser without
> > jQuery AJAX in less then a second):
>
> >               <div id=\"JTabbedPane10546001\" style=
> > \"position:absolute;left:0px;top:46px;width:884px;height:644px\"
> > tabbedPane=\"true\">
> >               <ul>
> >               <li><a href=\"#JTabbedPane10546001-tab-0\"><span>Button
> > Demo</span></a></li>
> >               <li><a href=\"#JTabbedPane10546001-tab-1\"><span>Source
> > Code</span></a></li>
> >               </ul>
> >               <div id=\"JTabbedPane10546001-tab-0\" style=
> > \"position:absolute;left:2px;top:26px;width:874px;height:585px\"><div
> > id=\"JPanel12136681\" style=\"position:absolute;left:2px;top:1px;width:
> > 874px;height:611px;clip:rect(0px 874px 611px 0px)\" class=\" border\">
> >                     <div id=\"JPanel14907335\" style=
> > \"position:absolute;left:2px;top:2px;width:874px;height:
> > 611px;clip:rect(0px 874px 611px 0px)\">
> >                     <div id=\"JTabbedPane30196714\" style=
> > \"position:absolute;left:0px;top:0px;width:874px;height:611px\"
> > tabbedPane=\"true\">
> >                     <ul>
> >                     <li><a href=\"#JTabbedPane30196714-
> > tab-0\"><span>Buttons</span></a></li>
> >                     <li><a href=\"#JTabbedPane30196714-
> > tab-1\"><span>Radio Buttons</span></a></li>
> >                     <li><a href=\"#JTabbedPane30196714-
> > tab-2\"><span>Check Boxes</span></a></li>
> >                     </ul>
> >                     <div id=\"JTabbedPane30196714-tab-0\" style=
> > \"position:absolute;left:2px;top:26px;width:868px;height:555px\"><div
> > id=\"JPanel5403403\" style=\"position:absolute;left:2px;top:1px;width:
> > 868px;height:581px;clip:rect(0px 868px 581px 0px)\">
> >                           <div id=\"JPanel16702321\" style=
> > \"position:absolute;left:5px;top:5px;width:548px;height:
> > 567px;clip:rect(0px 548px 567px 0px)\" class=\" border\">
> >                             <fieldset style=\"position:absolute;left:
> > 9px;top:8px;width:529px;height:61px;clip:rect(0px 549px 81px 0px)\"
> > class=\" border\">
> >                             <legend>Text Buttons</legend>
> >                             <input type=\"button\" id=
> > \"JButton7715289\" name=\"JButton7715289\" value=\"One \" class=
> > \"button\" onClick=\"return doSubmit('/button/JButton7715289')\" style=
> > \"position:absolute;left:11px;top:21px;width:69px;height:27px\">
> >                             <span style=\"font-size:1;width:
> > 10;position:absolute;left:80px;top:34px;width:11px;height:1px
> > \">&nbsp;</span>
> >                             <input type=\"button\" id=
> > \"JButton5689693\" name=\"JButton5689693\" value=\"Two\" class=\"button
> > \" onClick=\"return doSubmit('/button/JButton5689693')\" style=
> > \"position:absolute;left:92px;top:21px;width:66px;height:27px\">
> >                             <span style=\"font-size:1;width:
> > 10;position:absolute;left:158px;top:34px;width:11px;height:1px
> > \">&nbsp;</span>
> >                             <table border=0 cellpadding=2
> > cellspacing=0 class=\"button\" onclick=\"return doSubmit('/button/
> > JButton7083822')\" id=\"JButton7083822\" style=\"border-width:
> > 1px;border-style:outset;position:absolute;left:170px;top:22px;width:
> > 351px;height:25px\">
> >                               <tr>
> >                                 <td align=center>
> >                                 <table border=0 cellpadding=2
> > cellspacing=0>
> >                                   <tr>
> >                                     <td><span><font size=2
> > color=red><bold>Three!</font></span></td>
> >                                   </tr>
> >                                 </table>
> >                                 </td>
> >                               </tr>
> >                             </table>
> >                             </fieldset>
> >                           <span style=\"font-size:30;width:
> > 1;position:absolute;left:9px;top:73px;width:1px;height:31px\">&nbsp;</
> > span>
> >                             <fieldset style=\"position:absolute;left:
> > 9px;top:105px;width:410px;height:114px;clip:rect(0px 430px 134px 0px)
> > \" class=\" border\">
> >                             <legend>Image Buttons</legend>
> >                             <a href=\"#\" onclick=\"return doSubmit('/
> > button/JButton6676137')\"><img src=\"http://localhost:8040/webcream/
> > Windows_docs/images/resources/images/buttons/b1.gif\" alt=\"\" title=
> > \"\" style=\"position:absolute;left:5px;top:16px\" border=0></a>
> >                             <span style=\"font-size:1;width:
> > 10;position:absolute;left:132px;top:61px;width:11px;height:1px
> > \">&nbsp;</span>
> >                             <a href=\"#\" onclick=\"return doSubmit('/
> > button/JButton18285669')\"><img src=\"http://localhost:8040/webcream/
> > Windows_docs/images/resources/images/buttons/b2.gif\" alt=\"\" title=
> > \"\" style=\"position:absolute;left:143px;top:16px\" border=0></a>
> >                             <span style=\"font-size:1;width:
> > 10;position:absolute;left:270px;top:61px;width:11px;height:1px
> > \">&nbsp;</span>
> >                             <a href=\"#\" onclick=\"return doSubmit('/
> > button/JButton26899046')\"><img src=\"http://localhost:8040/webcream/
> > Windows_docs/images/resources/images/buttons/b3.gif\" alt=\"\" title=
> > \"\" style=\"position:absolute;left:281px;top:16px\" border=0></a>
> >                             </fieldset>
> >                           <span style=\"font-size:0;width:
> > 0;position:absolute;left:8px;top:213px;width:0px;height:323px
> > \">&nbsp;</span>
> >                           </div>
> >                         <span style=\"font-size:0;width:
> > 0;position:absolute;left:485px;top:5px;width:0px;height:0px\">&nbsp;</
> > span>
> >                           <div id=\"_133097577\" style=
> > \"position:absolute;left:557px;top:5px;width:303px;height:
> > 571px;clip:rect(0px 303px 571px 0px)\">
> >                             <div id=\"JPanel13419753\" style=
> > \"position:absolute;left:0px;top:0px;width:299px;height:
> > 567px;clip:rect(0px 299px 567px 0px)\" class=\" border\">
> >                               <div id=\"JPanel26452617\" style=
> > \"position:absolute;left:9px;top:8px;width:116px;height:
> > 252px;clip:rect(0px 116px 252px 0px)\">
> >                               <span id=\"JLabel18384844\" style=\"text-
> > align:left;position:absolute;left:0px;top:0px;width:104px;height:16px
> > \" class=\"label\"><nobr>Display Options:</nobr></span>
> >                               <span id=\"JCheckBox32263490\" style=
> > \"text-align:left;position:absolute;left:0px;top:16px;width:
> > 110px;height:25px\" class=\"checkbox\"><input type=\"checkbox\" id=
> > \"JCheckBox32263490\" name=\"JCheckBox32263490\" class=\"checkbox\"
> > checked onClick=\"doSubmit('/event/JCheckBox32263490')\">Paint Border</
> > span>
> >                               <span id=\"JCheckBox12860026\" style=
> > \"text-align:left;position:absolute;left:0px;top:42px;width:
> > 104px;height:25px\" class=\"checkbox\"><input type=\"checkbox\" id=
> > \"JCheckBox12860026\" name=\"JCheckBox12860026\" class=\"checkbox\"
> > checked onClick=\"doSubmit('/event/JCheckBox12860026')\">Paint Focus</
> > span>
> >                               <span id=\"JCheckBox14375014\" style=
> > \"text-align:left;position:absolute;left:0px;top:67px;width:
> > 80px;height:25px\" class=\"checkbox\"><input type=\"checkbox\" id=
> > \"JCheckBox14375014\" name=\"JCheckBox14375014\" class=\"checkbox\"
> > checked onClick=\"doSubmit('/event/JCheckBox14375014')\">Enabled</
> > span>
> >                               <span id=\"JCheckBox8952636\" style=
> > \"text-align:left;position:absolute;left:0px;top:92px;width:
> > 116px;height:25px\" class=\"checkbox\"><input type=\"checkbox\" id=
> > \"JCheckBox8952636\" name=\"JCheckBox8952636\" class=\"checkbox\"
> > checked onClick=\"doSubmit('/event/JCheckBox8952636')\">Content
> > Filled</span>
> >                               <span style=\"font-size:20;width:
> > 1;position:absolute;left:0px;top:117px;width:1px;height:21px\">&nbsp;</
> > span>
> >                               <span id=\"JLabel17724384\" style=\"text-
> > align:left;position:absolute;left:0px;top:138px;width:82px;height:16px
> > \" class=\"label\"><nobr>Pad Amount:</nobr></span>
> >                               <nobr id=\"JRadioButton8890213\"><span
> > style=\"position:absolute;left:0px;top:155px\" class=\"radio\"><input
> > type=\"radio\" value=\"JRadioButton8890213\" checked onClick=
> > \"doSubmit('/event/JRadioButton8890213')\" name=
> > \"ButtonGroup32191978\" class=\"radio\">Default</span></nobr>
> >                               <nobr id=\"JRadioButton33482373\"><span
> > style=\"position:absolute;left:0px;top:180px\" class=\"radio\"><input
>
> ...
>
> read more ยป

Reply via email to