summaryrefslogtreecommitdiff
path: root/static/files/def.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/files/def.js')
-rw-r--r--static/files/def.js12
1 files changed, 5 insertions, 7 deletions
diff --git a/static/files/def.js b/static/files/def.js
index 96c7fcf2..d377bf09 100644
--- a/static/files/def.js
+++ b/static/files/def.js
@@ -79,14 +79,12 @@ var ddx;var ddy;var dds=null;
function dropDown(e) {
e = e || window.event;
var tg = e.target || e.srcElement;
- if(tg.nodeType == 3)
+ while(tg && (tg.nodeType == 3 || tg.nodeName.toLowerCase() != 'a'))
tg = tg.parentNode;
- if(!dds && (tg.nodeName.toLowerCase() != 'a' || !tg.rel || tg.className.indexOf('dropdown') < 0))
- return;
- if(tg.rel)
+ if(tg && tg.rel)
tg.rel = tg.rel.replace(/ *nofollow */,"");
- if(!dds && !tg.rel)
+ if(!dds && (!tg || !tg.rel || tg.className.indexOf('dropdown') < 0))
return;
if(!dds) {
@@ -97,7 +95,7 @@ function dropDown(e) {
ddy += obj.offsetTop;
} while(obj = obj.offsetParent);
if(tg.className.indexOf('above') >= 0) {
- ddx += 25;
+ ddx += 30;
ddy -= x(tg.rel).offsetHeight - 20;
}
else
@@ -113,7 +111,7 @@ function dropDown(e) {
var mouseY = e.pageY || (e.clientY + document.body.scrollTop + document.documentElement.scrollTop);
var obj = x(dds.rel);
if((mouseX < ddx-25 || mouseX > ddx+obj.offsetWidth+5 || mouseY < ddy-20 || mouseY > ddy + obj.offsetHeight)
- || (tg.nodeName.toLowerCase() == 'a' && tg.className.indexOf('dropdown') >= 0 && tg != dds)) {
+ || (tg && tg.className.indexOf('dropdown') >= 0 && tg != dds)) {
obj.style.left = '-500px';
dds = null;
}