Hi

I try to open page with js (see below after exception)

When I use webtest parameter browser="FF3" (ThrowExceptionOnScriptError="true", JavaScriptEnabled="true") - is is ok, no errors

When I use browser="IE6" or "IE7" I got the following error (js code - see below)

Where is problem? JS support in HtmlUnit is different for IE and FF ?

======= EXCEPTION START ========
EcmaError: lineNumber=[9] column=[0] lineSource=[<no source>] name=[TypeError] sourceName=[https://tt-msc-ed/js/leftmenu.js] message=[TypeError: Cannot call method "getElements" of undefined (https://tt-msc-ed/js/leftmenu.js#9)] com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot call method "getElements" of undefined (https://tt-msc-ed/js/leftmenu.js#9) at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:513)
   at org.mozilla.javascript.Context.call(Context.java:515)
   at org.mozilla.javascript.ContextFactory.call(ContextFactory.java:507)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.execute(JavaScriptEngine.java:412) at com.gargoylesoftware.htmlunit.html.HtmlPage.loadExternalJavaScriptFile(HtmlPage.java:1004) at com.gargoylesoftware.htmlunit.html.HtmlScript.executeScriptIfNeeded(HtmlScript.java:358) at com.gargoylesoftware.htmlunit.html.HtmlScript$1.execute(HtmlScript.java:212) at com.gargoylesoftware.htmlunit.html.HtmlScript.onAllChildrenAddedToPage(HtmlScript.java:238) at com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:569) at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source) at com.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:523) at org.cyberneko.html.filters.DefaultFilter.endElement(DefaultFilter.java:210)

JS code:

/*var img = new Element('img');

img.src = '${pageContext.request.contextPath}/images/arrow_down_green.gif';    
*/

window.addEventMoo('domready', function() {

   var menu = $('menu');
  // var togglers = $ES('li.toggler', 'ul.leftnav');
   var togglers = $$('ul.leftnav')[0].getElements('li.toggler');

   var togglerButtons = [];
   var subs = [];
   togglers.each(function(toggler, index) {
       //if ($E('ul', toggler)) {
       if( toggler.getElement('ul')){
           subs[index] = toggler.getElement('ul');
           togglerButtons[index] = toggler.getElement('a');
           togglerButtons[index].href = 'javascript:void(0)';
           /* if(!subs[index].hasClass('opened')){
              subs[index].toggleClass('closed');
          } */
           togglerButtons[index].addEventMoo('click', 
toggle.bindWithEvent(togglerButtons[index], index, toggler));
       }
   });
   function toggle(event, i, li) {
       subs.each(function(sub, index){
           if ($(sub)) {
               togglerButtons[index].removeClass('expanded');
               if (!sub.hasClass('closed')) {
                   //alert('h')
                   sub.toggleClass('closed')
                   if (i === index) {
                       sub.addClass('closed');
                       return null;
                   };
               };
               if (i === index) {
                   togglerButtons[index].addClass('expanded');
                   sub.removeClass('closed');
               }
           }
       });
   };


});



_______________________________________________
WebTest mailing list
WebTest@lists.canoo.com
http://lists.canoo.com/mailman/listinfo/webtest

Reply via email to