使用javascript获取css样式属性

使用javascript获取css样式属性,javascript,php,jquery,html,css,Javascript,Php,Jquery,Html,Css,我有一个图像可拖动,想通过PHP保存它,所以我决定获取内部样式并将其作为输入字段中的值,这样我就可以通过$\u POST获取它,但我无法找到它是否是一个内部HTML数据,我可以通过调用innerHTML语法来获取它,但是,像这样,有没有任何方法可以为图像获得风格 <div class="scott_img"> <img id="uploadPreview" src="<?php echo (empty($data['profile_pic']))

我有一个图像
可拖动
,想通过PHP保存它,所以我决定获取内部样式并将其作为输入字段中的值,这样我就可以通过
$\u POST
获取它,但我无法找到它是否是一个内部
HTML
数据,我可以通过调用
innerHTML
语法来获取它,但是,像这样,有没有任何方法可以为图像获得风格

<div class="scott_img">
            <img id="uploadPreview" src="<?php echo (empty($data['profile_pic'])) ? "images/profile.jpg" : "uploads/" . $data['profile_pic']; ?>" style="style goes here">
            <span class="scouttag"></span>

        </div>
        <form method="POST" action="profile.php?uid=<?php echo $uid; ?>" enctype="multipart/form-data" style="text-align:center;">
            <input id="uploadImage" type="file" name="image" style="margin:auto;" />
            <input type="hidden" id="x" name="x" />
            <input type="hidden" id="y" name="y" />
            <input type="hidden" id="w" name="w" />
            <input type="hidden" id="h" name="h" />
            <input type="hidden" id="uploadPreview1" value="need style here so i can save it to database" />
            <button type="submit" name="update_picture" class="btn_form">Update Picture</button>
        </form> 

        <img class="scott_line"src="images/line.png">

         <script>
            (function() {
                var elem = document.getElementById('uploadPreview');
                var val  = getComputedStyle(elem);
                document.getElementById('uploadPreview1').value = val;
              var $section = $('.scott_img').first();
              $section.find('#uploadPreview').panzoom({
                $zoomRange: $section.find(".zoom-range"),
                $reset: $section.find(".reset")
              });
            })();
          </script>     

“style=”style goes here“>

由于Css值位于输入中,因此必须通过以下方式获取:

Var x = Document.getElementById("").value
然后在java脚本中,通过执行以下操作附加Css规则:

X.style.width = Y;
Or div.style.color = "#ccc";

希望您能理解这一点

因为Css值在输入中,您必须通过以下方式获得它:

Var x = Document.getElementById("").value
然后在java脚本中,通过执行以下操作附加Css规则:

X.style.width = Y;
Or div.style.color = "#ccc";

希望您能理解这一点

我不确定您将如何以及为什么使用此服务器端,但如果您认为这样做是正确的,请将JSON对象字符串化:

var val = JSON.stringify(getComputedStyle(elem));

我不确定您将如何以及为什么使用此服务器端,但如果您认为这样做是正确的,请将JSON对象字符串化:

var val = JSON.stringify(getComputedStyle(elem));
如果您得到元素样式标记(内联css)

如果您得到元素css

var element = document.getElementById('uploadPreview'),
    style = window.getComputedStyle(element),
    top = style.getPropertyValue('top');
如果您得到元素样式标记(内联css)

如果您得到元素css

var element = document.getElementById('uploadPreview'),
    style = window.getComputedStyle(element),
    top = style.getPropertyValue('top');

您可以在JS中获取元素的CSS样式,并将其转换为JSON,如下所示:


var elementCSS=JSON.stringify(document.getElementById('uploadPreview').style)
您可以在JS中获取元素的CSS样式并将其转换为JSON,如下所示:


var elementCSS=JSON.stringify(document.getElementById('uploadPreview').style)

您不能像下面这样使用简单的jQuery来获取样式值吗

var imgstyle = $("#uploadPreview").attr("style"); //this will get your whole value of style attribute.
$("#uploadPreview1").val(imgstyle); //this will update hidden field's value. 

另外,每次上传时,它似乎都会有所不同。因此,您可以将上述代码放在可拖动或文件上传的更改事件中。

您不能使用简单的jQuery来获得下面这样的样式值吗

var imgstyle = $("#uploadPreview").attr("style"); //this will get your whole value of style attribute.
$("#uploadPreview1").val(imgstyle); //this will update hidden field's value. 


此外,每次上传的内容似乎都会有所不同。因此,您可以将上述代码放在可拖动或文件上传的更改事件中。

what did
getComputedStyle(elem)
returns?value=“[object CSSStyleDeclaration]”what did
getComputedStyle(elem)
returns?value=“[object CSSStyleDeclaration]“样式属性和样式是此样式=“变换:矩阵(2,0,0,1,-2,25);背面可见性:隐藏;变换原点:50%50%0px;光标:移动;变换:无;”我得到了所有的东西,比如动画等等。还有其他的方法吗?我得到了,因为当上传图像用户界面时,我需要保存样式,当我在用户端显示图像时,样式也会被检索到。这是我做的,因为我放置了可拖动的图像jquerySo,它比简单的图像复杂得多。在我看来,它可以帮助您从屏幕的该部分截图。样式属性和样式是this style=“变换:矩阵(2,0,0,1,-2,25);背面可见性:隐藏;变换原点:50%50%0px;光标:移动;变换:无;”我得到了所有的东西,比如动画等等。还有其他的方法吗?我得到了,因为当上传图像用户界面时,我需要保存样式,当我在用户端显示图像时,样式也会被检索到。这是我做的,因为我放置了可拖动的图像jquerySo,它比简单的图像复杂得多。在我看来,它可以帮助您从screen.var elem=document.getElementById('uploadPreview').value的那部分截图;我在returnUploadPreview中未定义图像的id。您需要使用Css样式值获取输入框的ID。根据上面的代码,这是隐藏字段。这是我想要得到的转换样式:矩阵(2,0,0,1,-90,7);背面可见性:隐藏;变换原点:50%50%0px;光标:移动;过渡:无;是的,您可以按照上面var elem=document.getElementById('uploadPreview').value的说明,使用javascript编写所有这些内容;我在returnUploadPreview中未定义图像的id。您需要使用Css样式值获取输入框的ID。根据上面的代码,这是隐藏字段。这是我想要得到的转换样式:矩阵(2,0,0,1,-90,7);背面可见性:隐藏;变换原点:50%50%0px;光标:移动;过渡:无;是的,您可以按照上面的说明使用javascript编写所有内容,首先使用i'm get null,然后您的第二点将只获得value top,我需要这些样式表:matrix(2,0,0,1,-90,7);背面可见性:隐藏;变换原点:50%50%0px;光标:移动;过渡:无;通过使用第一个,我将得到null,而您的第二个点将只得到value top,我需要这些样式表:矩阵(2,0,0,1,-90,7);背面可见性:隐藏;变换原点:50%50%0px;光标:移动;过渡:无;