jQuery Opera Selector问题

时间:2012-09-25 21:41:07

标签: javascript jquery selector opera

我有这个代码适用于所有浏览器,但由于某些原因,Opera是一个很大的痛苦,并抛出错误:

Uncaught exception: TypeError: 'OBJ.data' is not a function

我的主插件OBJECT名为Box,在其中我有一个名为content的变量。

Box={
   content:''
}

单击图像后,它会将图像的父级“a”分配给Box.content变量。

Box.content=$(this).parents('a:first');

然后我使用以下方法在插件的其他地方引用它:

Box.content.dosomething()....

这适用于所有浏览器,但Opera和IE除外,它会引发上述错误。有任何想法吗? 谢谢!

;(function($){jQuery.fn.PluginName=function(options){var defaults={
      ....},
     Box={content:''},
     o=$.extend({},defaults,options||{});

function myFunction(){
   // SHOULD BE ABLE TO REFENCE IT HERE....
   Box.content.dosomething();
};

$('.image').bind('click',function(){
   Box.content=$(this).parents('a:first');
   // DO SOME OTHER STUFF
   myFunction();
});

1 个答案:

答案 0 :(得分:0)

发现问题与IE有关并且(没有检查但是我假设)Opera也正在触发Window resize事件onload,其中(当时Box.content变量为空且未分配)。这是一个相关的链接: enter link description here