以下是我用来突出显示鼠标悬停的行的函数。
当我想要从stripe_table类选择tbodies时,我无法理解如何实现这一目标。 一旦将其设置为事件监听器,我需要使a和td nodeName对mouseover事件做出响应,并因此突出显示其父行。
有人可以解释一下允许完成这个任务的步骤吗?我该如何遍历DOM以从悬停的a或td元素找到其父行?
谢谢!
将tbody设置为mouseover和mouseout的事件监听器 响应a和td元素->修改tr 找到目标元素的祖先表格行 以便将高亮显示应用于该表格行 要遍历DOM,请运行一个循环,将事件目标元素重置为其父节点,直到父节点的节点名称等于 在mouseout事件上,需要恢复格式化* /
当我想要从stripe_table类选择tbodies时,我无法理解如何实现这一目标。 一旦将其设置为事件监听器,我需要使a和td nodeName对mouseover事件做出响应,并因此突出显示其父行。
有人可以解释一下允许完成这个任务的步骤吗?我该如何遍历DOM以从悬停的a或td元素找到其父行?
谢谢!
将tbody设置为mouseover和mouseout的事件监听器 响应a和td元素->修改tr 找到目标元素的祖先表格行 以便将高亮显示应用于该表格行 要遍历DOM,请运行一个循环,将事件目标元素重置为其父节点,直到父节点的节点名称等于 在mouseout事件上,需要恢复格式化* /
//Set up Hover Events
function addEvent( 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);
}
function setUpFieldEvents(){
var stripeTables = document.getElementsByClassName("stripe_table");
var tableBodies = stripeTables.tBodies;
addEvent(tableBodies, "mouseover", hoverHighlight);
addEvent(tableBodies, "mouseout", undoHighlight);
}
function hoverHighlight(){
var stripeTables = document.getElementsByClassName("stripe_table");
var tableBodies = stripeTables.tBodies;
var tableData = tableBodies.getElementsByTagName("td");
}
function undoHighlight(){
}