Javascript 为什么DIV不遵循父级';s属性

Javascript 为什么DIV不遵循父级';s属性,javascript,jquery,html,Javascript,Jquery,Html,考虑一下这个被剪掉的代码 <fieldset id="fieldset"> <input id="first" /> <div id="second" /> </fieldset> 输出是 true false 我注意到输入标记遵循父对象的属性,而且我认为所有具有widget的标记都遵循,但其他标记,如div、a、span或。。没有 为什么? 如果我想让div元素跟随父元素的属性,我应该怎么做 报告说: 如果设置了窗体控件的di

考虑一下这个被剪掉的代码

<fieldset id="fieldset">
    <input id="first" />
    <div id="second" />
</fieldset>
输出是

true
false
我注意到输入标记遵循父对象的属性,而且我认为所有具有widget的标记都遵循,但其他标记,如div、a、span或。。没有

为什么?

如果我想让div元素跟随父元素的属性,我应该怎么做

报告说:

如果设置了窗体控件的disabled属性,或者窗体控件是设置了disabled属性的fieldset元素的后代,并且不是该fieldset元素的第一个legend元素子元素(如果有)的后代,则窗体控件将被禁用

div没有被禁用,因为它不是表单控件。它不能被禁用,因为这样做毫无意义

报告说:

如果设置了窗体控件的disabled属性,或者窗体控件是设置了disabled属性的fieldset元素的后代,并且不是该fieldset元素的第一个legend元素子元素(如果有)的后代,则窗体控件将被禁用


div没有被禁用,因为它不是表单控件。它不能被禁用,因为这样做毫无意义

因此,如果出于某种原因希望检查元素所在的
字段集是否已禁用,则可以为此创建自定义函数:

$.fn.isInDisabled = function () {
    var x;
    if($(this).is('fieldset')) {
       // If this is a fieldset, use it.
       x = $(this);
    }
    else {
        // Otherwise use the closest ancestor that is.
        x = $(this).parents('fieldset');
        // Return true if we are not in a fieldset.
        if(!x.length) return true;
    }
    // Return wheater x is disabled or not.
    return x.is(':disabled');
}
或者,如果您不关心我们不在字段集中的情况,您可以使用:

$.fn.isInDisabled = function () {
    return ($(this).is('fieldset') ? $(this) : $(this).parents('fieldset')).is(':disabled');
}

如果我们不在字段集中,则返回
false

因此,如果出于某种原因希望检查元素所在的
字段集是否已禁用,则可以为此创建自定义函数:

$.fn.isInDisabled = function () {
    var x;
    if($(this).is('fieldset')) {
       // If this is a fieldset, use it.
       x = $(this);
    }
    else {
        // Otherwise use the closest ancestor that is.
        x = $(this).parents('fieldset');
        // Return true if we are not in a fieldset.
        if(!x.length) return true;
    }
    // Return wheater x is disabled or not.
    return x.is(':disabled');
}
或者,如果您不关心我们不在字段集中的情况,您可以使用:

$.fn.isInDisabled = function () {
    return ($(this).is('fieldset') ? $(this) : $(this).parents('fieldset')).is(':disabled');
}

如果不在字段集中,将返回
false

Disabled仅适用于表单元素。
div
没有称为Disabled的属性,您试图通过禁用div实现什么?Disabled仅适用于表单元素。
div
没有称为Disabled的属性,您试图通过禁用div来实现什么?