gpt4 book ai didi

jQuery 交替行颜色 - IE 问题

转载 作者:行者123 更新时间:2023-12-01 06:07:49 26 4
gpt4 key购买 nike

为什么是这段代码:

$('#tbl tr:odd').css('background-color', '#f6f6f6');
$('#tbl tr:even').css('background-color', '#cccccc');

works fine所有浏览器中的插件之外。而相同的代码:

$('tr:odd', $this).css('background-color', options.tr_odd_bgcolor);
$('tr:even', $this).css('background-color', options.tr_even_bgcolor);

在任何版本的 IE 中根本不会对行进行着色,其中 $this 指的是包装集中指定的表,而 options.tr_odd_bgcolor 指的是颜色,例如 绿色

插件样式适用于除 IE 之外的所有浏览器。

以下是插件代码供您引用:

    (function($){
$.fn.styleTable = function(settings){
var opts = $.extend({}, $.fn.styleTable.defaults, settings);

return this.each(function(settings){
var options = $.extend({}, opts, $(this).data());
var $this = $(this);

$('tr:odd', $this).css('background-color', options.tr_odd_bgcolor);
$('tr:even', $this).css('background-color', options.tr_even_bgcolor);
});
}

$.fn.styleTable.defaults = {
tr_odd_bgcolor: '#f6f6f6',
tr_even_bgcolor: '#fff'
}

})(jQuery);

最佳答案

我认为 $this 无效。您应该使用 $(this) ,它在上下文中获取当前 DOM 元素并将其转换为 jQuery 对象,或者使用 this ,这是标准的 Javascript 访问方式您正在其上下文中执行的当前对象实例。 $this 根本不是有效的 Javascript。您的问题是否有拼写错误?

关于jQuery 交替行颜色 - IE 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3643536/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com