如何解决是否根据排序更改光标样式
|| 我正在使用jqgrid,并且有3个无法排序的列。此时,无论将排序设置为true还是false,当用户将鼠标悬停在标题上时,光标都将变为手形。我希望该光标不是这些列标题上的手(文本或指针)。这样会使用户感到困惑。这是可以设置的吗? 谢谢, 标记解决方法
我觉得这个问题很好。所以我+1。
您不是希望在非排序列上使用另一个光标的第一个人(不是最后一个)。可惜,但是jqGrid没有给您提供类或其他一些简单的属性,可用于查找可以在其中设置CSS \“ cursor:default \”的元素。
因此,我建议使用以下代码执行此操作:
var myGrid = $(\"#list\");
// create the grid
myGrid.jqGrid({
// all jqGrid parameters
});
// fix cursor on non-sortable columns
var cm = myGrid[0].p.colModel;
$.each(myGrid[0].grid.headers,function(index,value) {
var cmi = cm[index],colName = cmi.name;
if(!cmi.sortable && colName!==\'rn\' && colName!==\'cb\' && colName!==\'subgrid\') {
$(\'div.ui-jqgrid-sortable\',value.el).css({cursor:\"default\"});
}
});
您可以在演示现场看到该方法有效。在演示中,最后一列\'Notes \'是不可排序的。
如果这种行为在jqGrid的下一版本中成为标准,那就太好了。我将尝试寻找时间并提出建议,应更改jqGrid代码中的内容以使行为立即可用。
更新:免费jqGrid 4.8中不再存在游标在不可排序列上的问题。
,欢迎来到SO。
绝对。 CSS:
th.unsortableclass {
cursor: default;
}
现在,将该类应用于无法排序的列标题。
,Oleg的示例效果很好,但是我要求始终在列可排序的情况下始终显示箭头。我知道我要发表评论,但认为有人可能有相同的要求。
所以我将此添加到他的循环中:
jQuery(\'span.s-ico\',value.el).remove();
然后在他的代码运行之后:
jQuery(\".s-ico\").show();
然后添加到我的网格创建:
onSortCol:function(index,iCol,sortorder){
// redisplay all arrows
jQuery(\".s-ico\").show();
}
,$(\"jquery selector to pick only non-sorted columns\").css(\"cursor\",\"default\");
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。