REPLACE WORKAROUND attempt 1
first answer from
http://stackoverflow.com/questions/12770045/javascript-replace-alternative
this one works here. will test in ebay.
by Christopher Pearson
HTML
<div id="page" class="listing-details">
<ul class="tabs">
<li><a href="#item-details">Details</a>
</li>
<li><a href="#item-sizing">Sizing</a>
</li>
<li><a href="#item-condition">Condition</a>
</li>
</ul>
<div id="item-details" class="item-content">
<p>YO YO YO</p>
</div>
<div id="item-sizing" class="item-content">
<p>WHASSUP DOG!</P>
</div>
<div id="item-condition" class="item-content">
<p>CAP YO ASS.</p>
</div>
</div>
<!-- end item details section -->
JavaScript
String.prototype.switcher=function(str, newstr) {
return this.split(str).join(newstr);
};
var Tabs = {
className: "tabs",
activeClass: "active",
addEvent: function (obj, type, fn) {
if (obj.attachEvent) {
obj['e' + type + fn] = fn;
obj[type + fn] = function () {
obj['e' + type + fn](window.event);
};
obj.attachEvent('on' + type, obj[type + fn]);
} else {
obj.addEventListener(type, fn, false);
}
},
create: function (tabs, callbacks) {
if (!tabs.length) {
this.createSingle(tabs, callbacks);
} else {
this.createGroup(tabs, callbacks);
}
},
createSingle: function (tab, callbacks) {
if (this.Element.hasClass(tab, this.activeClass)) {
this.Element.show(this.getTarget(tab));
}
this.addEvent(tab, "click", function (e) {
if (Tabs.callback(this, callbacks, "click", e)) {
Tabs.Element.toggleClass(this, Tabs.activeClass);
if (Tabs.callback(this, callbacks, "show", e)) {
Tabs.Element.toggleVisibility(Tabs.getTarget(this));
}
}
if (e.preventDefault) { // For DOM compliant browsers http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-Event-preventDefault
e.preventDefault();
} else { // For MSIE http://msdn2.microsoft.com/en-us/library/ms536913.aspx
e.returnValue = false;
}
});
},
createGroup: function (tabs, callbacks) {
var active,
tab,
i;
function tabClickHandler(e) {
if (Tabs.callback(this, callbacks, "click", e, active)) {
Tabs.Element.removeClass(active, Tabs.activeClass);
Tabs.Element.addClass(this, Tabs.activeClass);
var from = active;
active = this;
...