首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用jQuery获取样式标签内容?

用jQuery获取样式标签内容?
EN

Stack Overflow用户
提问于 2011-11-18 21:15:18
回答 4查看 13K关注 0票数 4

问题

我试图在样式标记中获取内容,但我无法让它工作。

代码做什么

我使用jQuery并尝试使用text()和html()获取样式内容。它不起作用。

我的代码

代码语言:javascript
复制
<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
    <link rel="stylesheet/less" type="text/css" href="css/style.less">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js" type="text/javascript"></script>

    <style id="less:concepts-less-css-style" media="screen" type="text/css">
        body {
            padding: 10px;
            background: blue;
        }
    </style>

</head>
<body>
<script src="js/less-1.1.5.min.js" type="text/javascript"></script>
<script type="text/javascript">
        jQuery(document).ready(function($) {        
            var my_id = $('style').attr('id');
            var test = $('#less:concepts-less-css-style').text();
            var test2 = $('#less:concepts-less-css-style').html();
            alert(test + "#" + test2 + "#" + my_id);
        });
    </script>
</body>
</html>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-11-18 21:20:58

我认为您必须转义ID中的冒号字符,因为它通常在选择器语法中意味着什么。有关此问题的讨论,请参见Handling a colon in an element ID in a CSS selector

代码语言:javascript
复制
$('#less\\:concepts-less-css-style')

我个人避免在ID或类值中带有CSS选择器含义的特殊字符,以避免这种复杂性。

票数 4
EN

Stack Overflow用户

发布于 2011-11-18 21:17:29

尝试:

代码语言:javascript
复制
$('#less:concepts-less-css-style')[0].innerHTML
票数 3
EN

Stack Overflow用户

发布于 2011-11-18 21:20:20

这个id使得jQuery认为它是一个伪选择器。试一试

代码语言:javascript
复制
var elm = document.getElementById("less:concepts-less-css-style"),
    content = elm.innerHTML || elm.innerText || elm.textContent;

    alert( content );

当然,您可以将id更改为不那么不稳定,jQuery也会工作。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8189252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档