javascript - 获取从类 *not* style 属性继承的元素样式

标签 javascript jquery html css

如何获取从样式表/样式 标签 应用的 div 样式并以编程方式忽略元素样式?

例如

var alice = 'alice ' + $('.alice').css('color');
var boblice = 'alice ' + $('.bob').css('color');
var bob = 'bob ' + $('.bob').css('color');

$('#result').text(
alice + '\n' + bob
);

$('#expected').text(
boblice + '\n' + bob
);

var elem1 = document.getElementById("alice");
alicestyle = window.getComputedStyle(elem1, null);

console.log(alicestyle);
.alice {
  color:green;
}

.bob {
  color:green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id='alice' class="alice" style="color:red">
test
</div>

<div id = 'bob' class="bob">
test
</div>

result:
<div id="result">

</div>

expected:
<div id="expected">

</div>

getComputedStyle:
<div id="computed">

</div>


最佳答案

好吧,我认为您不能直接从样式表中获取样式。但我认为您可以使用以下代码来解决问题:

if( typeof( $('#alice').attr('style') ) != 'undefined' ) { 
   $('#alice').removeAttr('style'); 
   var aliceSheets = $('.alice').css('color');
   console.log(aliceSheets);
} 

如果只想获取样式而不改变元素的样式,则可以在读取颜色后添加 style 属性。

关于javascript - 获取从类 *not* style 属性继承的元素样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44938975/

相关文章:

jquery - 当另一个 div 包含特定文本时如何隐藏该 div?

javascript - 爆米花未注入(inject)您的文件中

javascript - Jquery 在 Magento 中不工作

javascript - 为什么要使用 CakePHP 的 JsHelper?

javascript - jQuery 滑动切换最小化

javascript - HTML5相机拉伸(stretch)图片

javascript - 使用 TWIG 中 JS 变量的参数生成 url

javascript - 脚本加载顺序

Javascript .querySelector 通过 innerTEXT 查找 <div>

javascript - 使用 jQuery 获取 URL 参数并将它们显示在 HTML 输入文本字段中