Ik heb zelf een javascriptje dat door alle TR's in alle TBODY tags zoekt. Daarna kijkt hij of er een anchor met class 'main' in staat. Als dat zo is krijgt de TR een mouseover en onclick event mee.
Er zijn vast efficiëntere scripts maar dit kon ik zelf maken
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| function stripe() {
var tables = document.getElementsByTagName('table');
var z=0;
for ( var i = 0; i < tables.length; i++ ) {
if(!hasClass(tables[i], 'list'))
continue;
var table = tables[i];
var rows = table.tBodies[0].rows;
for ( var y = 0; y < rows.length; y++ ) {
var row = rows[y];
if(row.getElementsByTagName('table').length > 0) {
continue;
}
z++;
if(z % 2 == 0)
addClass(row, 'even');
else
addClass(row, 'odd');
row.onmouseover = function() {addClass(this, 'hover')};
row.onmouseout = function() {removeClass(this, 'hover')};
row.onclick = function() {
var anchors = this.getElementsByTagName('a');
for ( var a = 0; a < anchors.length; a++ ) {
if(anchors[a].className == 'main') {
jumpTo(anchors[a].href);
break;
}
} //for
} //function
} //for
} //for
} //function |
Plus een paar functies die erin aangeroepen worden (niet zelf gemaakt):
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| function hasClass(node, className) {
if (node.className == className) {
return true;
}
var reg = new RegExp('(^| )' + className + '($| )')
if (reg.test(node.className)) {
return true;
}
return false;
}
function addClass(node, className) {
if (hasClass(node, className)) {
return false;
}
node.className += ' ' + className;
return true;
}
function removeClass(node, className) {
if (!hasClass(node, className)) {
return false;
}
node.className = eregReplace('(^| )' + className +'($| )', '', node.className);
return true;
}
function toggleClass(node, className) {
if (!removeClass(node, className) && !addClass(node, className)) {
return false;
}
return true;
} |