Author: knopp
Date: Sat Dec  8 07:09:28 2007
New Revision: 602479

URL: http://svn.apache.org/viewvc?rev=602479&view=rev
Log:
WICKET-1186

Modified:
    
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js

Modified: 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js?rev=602479&r1=602478&r2=602479&view=diff
==============================================================================
--- 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js 
(original)
+++ 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/wicket-ajax.js 
Sat Dec  8 07:09:28 2007
@@ -169,7 +169,7 @@
        }
 }
 
-Wicket.replaceOuterHtmlIE = function(element, text) {  
+Wicket.replaceOuterHtmlIE = function(element, text) {                          
                
                                                        
        if (element.tagName == "SCRIPT") {
                // we need to get the javascript content, so we create an 
invalid DOM structure,
@@ -186,13 +186,15 @@
        var parent = element.parentNode;
        var tn = element.tagName;
                                
+                                       
+       var container = Wicket.$("wicket-temp-container");                      
                
        var tempDiv = document.createElement("div");
        var tempParent;
        
        // array for javascripts that were in the text
        var scripts = new Array();                              
        
-       document.body.appendChild(tempDiv);
+       container.appendChild(tempDiv);
                
        if (tn != 'TBODY' && tn != 'TR' && tn != "TD" && tn != "THEAD") {
                
@@ -208,8 +210,6 @@
                for (var i = 0; i < s.length; ++i) {                    
                        scripts.push(s[i]);
                }                                               
-               
-               tempDiv.innerHTML = "";
                                                
                // now use regular div so that we won't mess the DOM
                tempDiv.innerHTML = '<div style="display:none">' + text + 
'</div>'; 
@@ -232,8 +232,6 @@
                        scripts.push(s[i]);
                }               
                
-               tempDiv.innerHTML = ""; 
-       
                // hack to get around the fact that IE doesn't allow to replace 
table elements
                tempDiv.innerHTML = '<table style="display: none">' + text + 
'</table>';
                
@@ -252,10 +250,11 @@
     // remove the original element
        parent.removeChild(element);
 
-       element.outerHTML = "";
+       element.outerHTML = ""; 
        element = "";
-       
-       document.body.removeChild(tempDiv);
+               
+       container.removeChild(tempDiv);
+       container.innerHTML = "";
        tempDiv.outerHTML = "";
 
        parent = null;
@@ -1986,3 +1985,12 @@
            e.style.display = "none";
        }
 }
+
+Wicket.Event.addDomReadyEvent(function() {
+       if (Wicket.Browser.isIE()) {
+               var div = document.createElement("div");
+               div.setAttribute("id", "wicket-temp-container");
+               div.setAttribute("style", "display:none");
+               document.body.appendChild(div);
+       }
+});
\ No newline at end of file


Reply via email to