这个blockUI插件有一个奇怪的东西。
这是我用来调用块的函数:
function runBlockUI(selector,width)
{
$.blockUI({
message: $(selector),
centerY: 0,
css: {
top: '30px',
left: ($(window).width() - width) /2 + 'px',
width: width + 'px',
height: '550px'}
});
$('.blockOverlay').attr('title','Klik om venster te sluiten');
$('.blockOverlay').click($.unblockUI);
}
问题是该函数由 3 个不同的选择器调用。有了 2,它就可以完美地工作。但对于另一个,它只工作一次。关闭并调用函数后,出现以下错误(在Firebug中):
TypeError: $.blockUI is not a function
我对此很困惑,希望有人可以帮助我!提前感谢!
格茨
!!解决!!!
问题解决了。我太笨了,我没有看到这个哈哈。该功能适用于 2 个项目。但是对于不起作用的消息div 包含一个 html 文件的 load() 函数。我太愚蠢了
<script type="text/javascript" src="jquery.js"></script>
在加载的 HTML 中。此加载确实"取消设置"了块UI插件。删除了 js 包含,它现在可以工作了!感谢您的关注!
看起来这条线是问题所在。
$('.blockOverlay').click($.unblockUI);
您正在为单击事件分配方法而不是函数。
$('.blockOverlay').click(function() {$.unblockUI() } ); // Supposed to be called this way
此外,每次调用函数时都要分配单击事件。将此行移出函数调用。.