Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在jquery中使用css属性动态设置宽度值?_Javascript_Jquery_Css - Fatal编程技术网

Javascript 在jquery中使用css属性动态设置宽度值?

Javascript 在jquery中使用css属性动态设置宽度值?,javascript,jquery,css,Javascript,Jquery,Css,我试图用一个新的动态创建的具有相同维度的div覆盖一个现有div。我尝试使用现有div height和width动态设置新div的高度和宽度。 我在divSize数组中获取现有div的维度,并将其传递给generateDiv函数 在检查元素时,我发现它没有将height和width属性值添加到CSS中。我做错了什么?我错过了什么吗?任何帮助都将不胜感激 可能的代码如下: function generateDiv(divSize, divContent, object) {

我试图用一个新的动态创建的具有相同维度的div覆盖一个现有div。我尝试使用现有div height和width动态设置新div的高度和宽度。 我在divSize数组中获取现有div的维度,并将其传递给generateDiv函数

在检查元素时,我发现它没有将height和width属性值添加到CSS中。我做错了什么?我错过了什么吗?任何帮助都将不胜感激 可能的代码如下:

function generateDiv(divSize, divContent, object) {
            $('<div class="divOverlay">' + divContent + '</div>').css({
                'width': divSize[0] + 'px !important',
                'height': divSize[1] + 'px !important',
                'background-color': '#ddd',
                'position': 'absolute',
                'color': '#56D9C9',
                'margin':'7px 7px 7px 0px',
                'zIndex': '100'
            }).appendTo($("#" + object).css("position", "relative"))

        }
函数generateDiv(divSize、divContent、object){
$(''+divContent+'').css({
“宽度”:divSize[0]+“px!重要”,
“高度”:divSize[1]+“px!重要”,
“背景色”:“ddd”,
'位置':'绝对',
“颜色”:“56D9C9”,
“保证金”:“7px 7px 7px 0px”,
“zIndex”:“100”
}).appendTo($(“#”+对象).css(“位置”、“相对”))
}

试试这个。首先附加html,然后应用css

function generateDiv(divSize, divContent, object) {
            $('<div class="divOverlay">' + divContent + '</div>').appendTo($("#" + object).css("position", "relative")).css({
                'width': divSize[0] + 'px !important',
                'height': divSize[1] + 'px !important',
                'background-color': '#ddd',
                'position': 'absolute',
                'color': '#56D9C9',
                'margin':'7px 7px 7px 0px',
                'zIndex': '100'
            })

        }
函数generateDiv(divSize、divContent、object){
$(“”+divContent+“”).appendTo($(“#“+”对象).css(“位置”,“相对”)).css({
“宽度”:divSize[0]+“px!重要”,
“高度”:divSize[1]+“px!重要”,
“背景色”:“ddd”,
'位置':'绝对',
“颜色”:“56D9C9”,
“保证金”:“7px 7px 7px 0px”,
“zIndex”:“100”
})
}
改用这个:

function generateDiv(divSize, divContent, object) {
        $('<div>').addClass("divOverlay").html(divContent).css({
            'width': divSize[0] + 'px',
            'height': divSize[1] + 'px',
            'background-color': '#ddd',
            'position': 'absolute',
            'color': '#56D9C9',
            'margin':'7px 7px 7px 0px',
            'zIndex': '100'
        }).appendTo($("#" + object).css("position", "relative"))

    }
函数generateDiv(divSize、divContent、object){
$('').addClass(“divOverlay”).html(divContent.css({
“宽度”:divSize[0]+“px”,
“高度”:divSize[1]+“px”,
“背景色”:“ddd”,
'位置':'绝对',
“颜色”:“56D9C9”,
“保证金”:“7px 7px 7px 0px”,
“zIndex”:“100”
}).appendTo($(“#”+对象).css(“位置”、“相对”))
}
$(“”)attr('style','width:100px!important;');

这将起作用

请先附加html,然后从jQuery添加css。尝试了这种方法,但没有解决问题。你能解释一下这个顺序如何帮助你选择高度和宽度属性。你只面临“宽度”和“高度”的问题吗?其他css工作?尝试控制台(divSize[0])和控制台(divSize[1])。你得到了价值吗?嗨,Av。你能解释一下它是怎么工作的吗。它将拾取高度和宽度属性值,但一旦我包含重要内容,它将无法加载它们。为什么这种行为会有这种差异呢?您需要使用样式函数。选中此选项或另一个选项,使类具有!重要的值和addClass。啊,我主要只是清理了您的代码,以便jQuery更容易理解。
!重要信息
部分失败,因为它不是css值的一部分,而是该样式的优先级。因此,当您尝试将其作为value参数的一部分传递时,jQuery下面的基本javascript函数无法解析它。谢谢:)
$("<div />").attr('style', 'width: 100px !important;');