jquery怎么获取style里面的属性值

jquery怎么获取style里面的属性值,第1张

jquery获取style的属性值有两种方法

第一种是getElementById() 方法。它可以返回对拥有指定 ID 的第一个对象的引用。在 *** 作文档的一个特定的元素时,最好给该元素一个 id 属性,为它指定一个(在文档中)唯一的名称,然后就可以用该 ID 查找想要的元素。

第二种是getElementsByName() 方法,它可以返回带有指定名称的对象的集合。该方法与getElementById() 方法相似,但是它查询元素的 name 属性,而不是 id 属性。另外,因为一个文档中的 name 属性可能不唯一(如 HTML 表单中的单选按钮通常具有相同的 name 属性),所有 getElementsByName() 方法返回的是元素的数组,而不是一个元素。

jquery获取对象的css属性值的时候,就算我们没有给这个对象设置过css属性值,这些值也会存在,只不过有些是默认值。下面我们来输出一个div的css属性值,原始代码如下

<!DOCTYPE html>

<html>

<head>

    <title>DIV_TEST</title>

    <meta charset="utf-8"/>

    <style type="text/css">

        #top1{

        }

    </style>

</head>

<body>

    <div id="top1">

        <u>你好我是某某某</u>

    </div>

<script src="jquery-321minjs" ></script>

    <script>

        $(document)ready(function(){

            consolelog("float的值是:"+$("#top1")css("float"));

            consolelog("height的值是:"+$("#top1")css("height"));

            consolelog("overflow的值是:"+$("#top1")css("overflow"));

            consolelog("color的值是:"+$("#top1")css("color"));

            consolelog("big的值是:"+$("#top1")css("big"));

        });

    </script>

</body>

</html>

结果如下

可以看到我们没有设置过div的css属性,除了高度以外剩下的只要存在这个css属性的都是默认值,唯一不同的是最后一个big属性,我们知道这个属性不是css的属性,因此我们判断有没有某个属性的时候可以通过这个方式判断

$(document)ready(function(){

    consolelog("是否存在big属性:"+testHasCss($("#top1"),"big"));

    consolelog("是否存在color属性:"+testHasCss($("#top1"),"color"));

    consolelog("是否存在display属性:"+testHasCss($("#top1"),"display"));

    consolelog("是否存在gogo属性:"+testHasCss($("#top1"),"gogo"));

});

var testHasCss = function(obj,cssStr){

    if((obj)css(cssStr) === undefined){

        return false;

    }else{

        return true;

    }

}

结果如下

在理解提问君的需求的前提下,并充分借鉴一楼君的成果(如果问题得到解决,请采用他的答案!),修改如下:

<html> 

<head> 

<title>JS获取CSS属性值</title> 

<meta >

是的,jQuery使用 CSS 选择器来选取元素。

jQuery 使用 CSS 选择器来选取 HTML 元素。例如:

$("p") 选取 <p> 元素。

$("pintro") 选取所有 class="intro" 的 <p> 元素。

$("p#demo") 选取所有 id="demo" 的 <p> 元素。

jQuery css()选择器是jquery中的一个功能。

运行中的this和div#id1是同一元素么

$("div#id1")append($(this)css("height"));的写法里,this是外部控制的,或者声明,或者传递,

并不一定就是同一元素来着

我试了一下,用你的方法取出来的是px数值的字符串。没有遇到百分比的情况啊。

同时jq提供了直接获取宽度的方法:width([val|fn]) ,innerWidth() ,outerWidth([options]) ,他们返回的是数值。

分为以下2种情况: 

1如果css写成行内样式,可以通过获取style属性的值来判断,示例如下: 

判断id为divid的div元素是否有font-size样式:

2如果css写成类样式,可以通过获取class属性的值来判断,示例如下: 

判断id为divid的div元素是否含有类样式divclass:

描述: 为每个匹配的元素添加指定的样式类名

$('div')addClass('className');//为所有div添加名为className的class1

removeClass 

描述: 移除集合中每个匹配元素上一个,多个或全部样式。

$('div')removeClass('className');//将所有div上名为className的class移除1

toggleClass 

描述: 在匹配的元素集合中的每个元素上添加或删除一个或多个样式类,取决于这个样式类是否存在或值切换属性。即:如果存在(不存在)就删除(添加)一个类。

$('div')toggleClass('className');//如果div上有这个class就删除,没有就添加。

以上就是关于jquery怎么获取style里面的属性值全部的内容,包括:jquery怎么获取style里面的属性值、jquery 检查元素是否有某个css属性、js如何获取css文件内的一个属性值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10136378.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存