如何进一步解耦此JavaScript代码?

如何进一步解耦此JavaScript代码?,javascript,jquery,decoupling,Javascript,Jquery,Decoupling,我有一个JavaScript对象。你可以看到这条线: window.gv.borderiseTDCell(this); 与窗口紧密耦合(如果未初始化gv,则会崩溃)。然而,我真正想做的是: //bind the click event jQuery('.highlightableTDCell').click(function () { borderiseTDCell(this); }); 但这不起作用。你知道我能做什么吗?这是完整的lisinng(带紧耦合): 还有一页 <t

我有一个JavaScript对象。你可以看到这条线:

window.gv.borderiseTDCell(this);
与窗口紧密耦合(如果未初始化
gv
,则会崩溃)。然而,我真正想做的是:

//bind the click event
jQuery('.highlightableTDCell').click(function () {

    borderiseTDCell(this);
});
但这不起作用。你知道我能做什么吗?这是完整的lisinng(带紧耦合):

还有一页

<table class="EditTable" cellpadding="0" cellspacing="0">     
      <tr>
            <td>
                <div style="">0</div>
            </td>
            <td>
                <div style="">0 akudsfsa fdhsad fiasgdf swae</div>
            </td>
            <td class="highlightableTDCell">
                <div>
                    <input value="0.00"/>
                </div>
            </td>
      </tr>
</table>

0
0 akudsfsa fdhsad fiasgdf swae

这可能是因为当您应该使用
$(此)

此外,
gridview
似乎没有定义:

var gridview = function (){}

不知道为什么需要一个库来勾勒表格单元格的轮廓。创建一个名为
outlinedCell

.outlinedCell{border:1px solid #f00;}
然后可以添加、删除或切换该类

//bind the click event
$('.highlightableTDCell').click(function () {
    $(this).addClass('outlinedCell');
    // or // $(this).removeClass('outlinedCell');
    // or // $(this).toggleClass('outlinedCell');
});

实时示例:

如果您使用的是JQuery,请使用$this而不是$this,这样您就可以访问正确的指针……感谢您的回答,但它并没有真正回答我的问题。这个类不仅仅是高亮显示单元格。谢谢
.outlinedCell{border:1px solid #f00;}
//bind the click event
$('.highlightableTDCell').click(function () {
    $(this).addClass('outlinedCell');
    // or // $(this).removeClass('outlinedCell');
    // or // $(this).toggleClass('outlinedCell');
});