我正在getSelectedIndex
从插件Megalist调用一个方法,如下所示:
var selectedIndex = $('#left-list').megalist('getSelectedIndex');
但是,我没有返回一个整数,而是得到一个表示列表的 jQuery 对象。我试图直接调用该方法,两者都是
var selectedIndex = $('#left-list').getSelectedIndex();
和
var selectedIndex = $('#left-list').megalist().getSelectedIndex();
但随后我收到一条错误消息,指出没有名为getSelectedIndex
. 插入.eq(0)
以仅隔离第一个 jQuery 对象也不起作用。我试着用谷歌搜索,但这几 页似乎没有提供答案。 该方法定义如下:
getSelectedIndex: function() {
return parseInt(this.selectedIndex, 10);
},
并且应该返回一个整数。我怎样才能调用该方法来返回一个整数呢?
更新:似乎在做这样的事情:
window.selectedIndex = -1;
// ...
function listChangeHandler( event ) {
// ...
window.selectedIndex = event.selectedIndex;
// ...
}
// ...
$('.favorite-link').on('click', function(){
if (window.selectedIndex != -1)
{
if (window.favorites.indexOf(window.selectedIndex) == -1)
{
window.favorites.push(window.selectedIndex);
}
}
});
可以解决问题,但是我仍然想知道是否可以在不使用全局变量的情况下完成此操作。