我希望在执行某个操作时禁用所有页面元素。类似于JQuery UI中的模态功能。

就像执行ajax Action 一样。我希望显示一个通知并同时启用模式功能。并且在请求之后,需要重新启用页面元素。

核心jquery中是否有针对该插件或任何插件的任何选项?

最佳答案

页面元素不会被禁用-这样做会很繁琐-而是将半透明的div覆盖在所有其他页面元素的顶部。为此,您可能会做类似的事情

// Declare this variable in the same scope as the ajax complete function
overlay = $('<div></div>').prependTo('body').attr('id', 'overlay');

和CSS:
#overlay {
  position: fixed;
  height: 100%;
  width: 100%;
  z-index: 1000000;
  background: url('link/to/semitransparent.png');
}

然后,一旦操作完成,您就可以像这样将其删除:
overlay.remove();

如果这是您唯一需要的,则无需包括jQuery UI。

10-07 18:05