该disabled
属性仅适用于作为form
元素的子集(input
, button
,select
并且texarea
是我能立即想到的唯一)
$('.main-wrapper').find('input, textarea, button, select').each(function () {
$(this).prop('disabled', true);
});
您还可以div
在包装器上放置一个覆盖层,以防止选择和锚标记的使用。将 a 添加div
到您的 HTML,然后将其添加到您的 JS 和 CSS:
JavaScript
var mainWrapper = $('.main-wrapper')
mainWrapper.find('input, textarea, button, select').each(function () {
$(this).prop('disabled', true);
});
var mainWrapperPos = mainWrapper.position();
var mainWrapperHeight = mainWrapper.height();
var mainWrapperWidth = mainWrapper.width();
$('#cover').css({
'opacity':0.3,
'top': mainWrapperPos.top,
'left': mainWrapperPos.left,
'height': mainWrapperHeight,
'width': $('.main-wrapper').width()
});
CSS
#cover {
position:absolute;
}
注意:您应该同时进行禁用和覆盖的迭代以防止选项卡式选择。此外,对于<a>
锚元素,您也可以将其设置href
为#
防止选项卡式使用。
jsFiddle