Re-fix for bug 77699: the undefined error affected other browsers than just IE5, so work around it for all browsers.

Patch by Stephen Lee <slee@uk.bnsmc.com>
r= afranke@ags.uni-sb.de
This commit is contained in:
justdave%syndicomm.com 2001-07-20 08:25:30 +00:00
Родитель 192a6ccda0
Коммит ad9910175d
1 изменённых файлов: 17 добавлений и 25 удалений

Просмотреть файл

@ -16,41 +16,33 @@
// Contributors:
// Stephen Lee <slee@uk.bnsmc.com>
// variable below should be initialised according to whether
// browser is IE 5.0 or earlier, but should be false for IE 5.5
var is_IE5=(navigator.appVersion.search(/MSIE 5.0/g)>0);
// Use no_result variable to avoid problems with "undefined" on some browsers
// Bodge to get round IE5 not understanding "undefined", "shift" and "unshift"
var no_result="---";
var no_result=is_IE5?"---":undefined;
// do_unshift(l, s) is equivalent to l.unshift(s), but some browsers do not
// support the built-in function.
function do_unshift(l, s) {
if(is_IE5) {
l.length = l.length + 1;
for (var i=l.length-1; i>0; i--) {
l[i] = l[i-1];
}
l[0] = s;
return l.length;
}
else {
return l.unshift(s);
l.length = l.length + 1;
for (var i=l.length-1; i>0; i--) {
l[i] = l[i-1];
}
l[0] = s;
return l.length;
}
// do_shift(l) is equivalent to l.shift(s), but some browsers do not
// support the built-in function.
function do_shift(l) {
if(is_IE5) {
var l0=l[0];
for (var i=0; i<l.length-1; i++) {
l[i] = l[i+1];
}
l.length = l.length - 1;
return l0;
}
else {
return l.shift();
var l0=l[0];
for (var i=0; i<l.length-1; i++) {
l[i] = l[i+1];
}
l.length = l.length - 1;
return l0;
}
function go_to (url) {