Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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 有什么简单的方法可以检测attr jquery吗_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 有什么简单的方法可以检测attr jquery吗

Javascript 有什么简单的方法可以检测attr jquery吗,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试图检测一个元素是否有它不特定的属性。我只是想知道有没有。如果有任何属性,我想删除它们并添加新属性。如果没有任何新属性,则只添加新属性 我的密码是 但在控制台中,它显示uncaughttypeerror:无法读取未定义的属性“length” 有人能帮忙吗 if($('.element').attr('style') === undefined){ 将测试属性是否已定义。尝试此操作 if($('.element').attr('style') && $('.element').

我试图检测一个元素是否有它不特定的属性。我只是想知道有没有。如果有任何属性,我想删除它们并添加新属性。如果没有任何新属性,则只添加新属性

我的密码是 但在控制台中,它显示
uncaughttypeerror:无法读取未定义的属性“length”
有人能帮忙吗

if($('.element').attr('style') === undefined){
将测试属性是否已定义。

尝试此操作

if($('.element').attr('style') && $('.element').attr('style').length > 0){
     $('.element').removeAttr('style');
 }   

 $('.element').css({
    "top": (posY),
    "left": (posX)
});

如果正确解释问题,请尝试使用
.is()


attr('style')
返回(值的)字符串(如果存在);否则未定义。代码正在点击“否则”。您根本不需要检查,只需调用
removeAttr
$('.element').removeAttr('style').css({top:3}),注意它只删除内联样式我只是好奇。你为什么还要费心删除现有的样式?为什么不直接设置你想要的新样式呢?它们将替换当前存在的任何属性。是否需要检查在任何
.element
处设置的任何属性,或者仅检查
style
属性?
if($('.element').attr('style') && $('.element').attr('style').length > 0){
     $('.element').removeAttr('style');
 }   

 $('.element').css({
    "top": (posY),
    "left": (posX)
});
if ($(".element[style]").is("*")) {
  $(".element").attr("style", "top:" + (posY) + ";left:" + (posX))
}