Update of /cvsroot/magicajax/magicajax/Core/script
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19281/magicajax/Core/script
Modified Files:
AjaxCallObject.js
Log Message:
Several fixes to get the reflecting for scripts and stylesheets working
Index: AjaxCallObject.js
===================================================================
RCS file: /cvsroot/magicajax/magicajax/Core/script/AjaxCallObject.js,v
retrieving revision 1.48
retrieving revision 1.49
diff -C2 -d -r1.48 -r1.49
*** AjaxCallObject.js 23 Jan 2006 01:28:41 -0000 1.48
--- AjaxCallObject.js 24 Jan 2006 16:30:27 -0000 1.49
***************
*** 799,810 ****
if (document.styleSheets)
{
if (document.styleSheets.length == 0)
! {
! //no stylesheets yet, so create empty one
! var head = document.getElementsByTagName("head")[0];
! var style = document.createElement("style");
! style.type = "text/css";
! head.appendChild(style);
! }
//add style rule to last stylesheet (forces proper cascading)
--- 799,806 ----
if (document.styleSheets)
{
+ // based on http://www.bobbyvandersluis.com/articles/dynamicCSS.php
+ var style = null;
if (document.styleSheets.length == 0)
! style = this.CreateStyleTag();
//add style rule to last stylesheet (forces proper cascading)
***************
*** 813,817 ****
{
//Mozilla
! lastStyle.insertRule(innerText, lastStyle.cssRules.length);
}
else if (typeof lastStyle.addRule == "object")
--- 809,816 ----
{
//Mozilla
! var styleRule = document.createTextNode(innerText);
! style = (style == null) ? this.CreateStyleTag() : style;
! style.appendChild(styleRule);
! //lastStyle.insertRule(innerText, lastStyle.cssRules.length); //doesn't seems to work
}
else if (typeof lastStyle.addRule == "object")
***************
*** 830,833 ****
--- 829,843 ----
}
+ AjaxCallObject.prototype.CreateStyleTag = function()
+ {
+ var head = document.getElementsByTagName("head")[0];
+ var style = (typeof document.createElementNS != "undefined") ?
+ document.createElementNS("http://www.w3.org/1999/xhtml", "style") :
+ document.createElement("style");
+ style.setAttribute("type", "text/css");
+ //style.setAttribute("media", "screen");
+ return head.appendChild(style);
+ }
+
AjaxCallObject.prototype.SetFieldIfEmpty = function(fieldName, fieldValue)
{
|