I'm getting concerned about the viability of a Lift/JQuery web
solution. I am trying to implement a widget around the
jquery.mbContainerPlus.1.7.6 plugin. I can get it to work in  IE 7,
but not in Firefox 3.08, where I get the following firebug error:

[Exception... "Component returned failure code: 0x80004003
(NS_ERROR_INVALID_POINTER) [nsIDOMNSHTMLElement.innerHTML]"  nsresult:
"0x80004003 (NS_ERROR_INVALID_POINTER)"  location: "JS frame ::
http://localhost:8080/classpath/jquery-1.3.2.js :: anonymous :: line
251"  data: no]
http://localhost:8080/classpath/jquery-1.3.2.js
Line 251

This has to do with an innerHtml line that shows up in jquery.js,
although line 251 in that file is actually blank, so I don't know
where it comes from.

Creating the widget was simple. I just created a class to spit out the
relevant NodeSeqs:

class Container {
  def renderHead(xhtml: NodeSeq): NodeSeq = {

    <head>
      <link rel="stylesheet" type="text/css" href={"/" +
LiftRules.resourceServerPath +"/mbContainer.css"} title="style"
media="screen"/>
      <script type="text/javascript" src={"/" +
LiftRules.resourceServerPath + "/mbContainer.js"}></script>
      <script type="text/javascript" src={"/" +
LiftRules.resourceServerPath + "/ui.core.min.js"}></script>
      <script type="text/javascript" src={"/" +
LiftRules.resourceServerPath + "/ui.draggable.min.js"}></script>
      <script type="text/javascript" src={"/" +
LiftRules.resourceServerPath + "/ui.resizable.min.js"}></script>
      <script type="text/javascript" src={"/" +
LiftRules.resourceServerPath + "/jquery.metadata.js"}></
script>
      <script type="text/javascript">{
        Unparsed("""
          $(function(){
                        $(".containerPlus").buildContainers({
                                containment:"document",
                                elementsPath:"elements/"
                        });
                });
        """)
       }
      </script>
    </head>

  }


  def renderContainer(xhtml: NodeSeq): NodeSeq = {
      Unparsed("""
      <div class="containerPlus resizable {buttons:'m,c',
skin:'white'}">
                <div class="no">
                        <div class="ne">
                                <div class="n">main content</div>
                        </div>
                        <div class="o">
                                <div class="e">
                                        <div class="c">
                                                <div class="content">This is 
the main content</div>
                                        </div>
                                </div>
                        </div>
                        <div>
                        <div class="so">
                               <div class="se">
                                      <div class="s"></div>
                                   </div>
                                 </div>
                    </div>
                </div>
     </div>
      """)
  }

If I have to jump through hoops to get it to work in Firefox, what
good is Lift? Or, am I just missing something obvious? If anyone has
had similar problems and has a workaround, please help.

By the way, if I just create an html file with the containerPlus node
as above and display it in Firefox without using Lift, I don't get the
error. Everything works great.

Glenn Silverman

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to liftweb@googlegroups.com
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to