给el-table加上fixed属性设置鼠标移入行背景颜色
时间: 2024-11-03 10:22:51 浏览: 91
在ECharts的表格组件`el-table`中,如果你想在固定列(`fixed`)上设置鼠标悬停时的行背景颜色,你可以通过自定义单元格样式来实现这个效果。首先,你需要在`row-class-name`或`cell-style` prop中动态计算每个单元格的样式。
例如,如果你想要当鼠标移动到某一固定列的行时,背景变为浅灰色,你可以这样做:
```html
<template>
<el-table
:data="tableData"
ref="table"
:row-class-name="getRowClass"
:cell-style="{ background: 'lightgray' }"
>
<!-- ...其他表头和列配置... -->
<el-table-column type="fixed" label="固定列标题">
<!-- ...列的内容... -->
</el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [...], // 表的数据
};
},
methods: {
getRowClass({ row, rowIndex }) {
if (this.$refs.table.$el.isFixed) { // 判断是否在固定列区域
return `hover-row-${rowIndex}`;
}
return '';
}
},
// ...其他生命周期钩子和事件处理...
};
</script>
<style scoped>
.hover-row-{{index}} {
& .cell {
&:hover {
background: lightgray;
}
}
}
</style>
```
在这个例子中,`getRowClass`函数会在渲染每一行时检查当前行是否位于固定列区域,然后为它添加一个唯一的CSS类名。在`.vue`文件中的样式部分,我们设置了`.hover-row-{{index}} .cell:hover`选择器来改变鼠标悬停时的背景色。
阅读全文