Control.tabs still broken (prototype 1.6, ie 6)

To fix it in IE, I had to replace the addTab function:

addTab: function(link){
    this.links.push(link);
    link.key = link.getAttribute('href').replace(window.location.href.split('#')[0],'').split('/').last().replace(/#/,'');
    this.containers[link.key] = $(link.key);
    link.observe(this.options.hover ? 'mouseover' : 'click', function(event) {
        event.stop();
        this.setActiveTab(event.target);
    }.bindAsEventListener(this));
},

Notice the (more standard) link.observe invocation. Now it's working again.

BTW you could directly set the event name ('mouseover', 'click', whatever) in the options attribute instead of the hover. Just a thought.

Thanks for this great piece of software.

Posted November 9th, 2007 at 11:21am by icoloma

Dammit my fingers faster than my brain:


    addTab: function(link){
        this.links.push(link);
        link.key = link.getAttribute('href').replace(window.location.href.split('#')[0],'').split('/').last().replace(/#/,'');
        this.containers[link.key] = $(link.key);
        link.observe(this.options.hover ? 'mouseover' : 'click', function(event) {
            event.stop();
            this.setActiveTab(event.target);
        }.bindAsEventListener(this));
    },

Posted November 9th, 2007 at 11:22am by icoloma

Login or Register to Post