javascript - 通过 vanilla Javascript 读取参数
问题描述
寻找以下一些建议 - 我将带有参数的 onclick 事件传递给 JS,如下所示:
<div class="artistthumb" id="jamesPaterson1" onclick="artistModalOpen('jamesPaterson1')"></div>
这将进入以下 JS 函数:
function artistModalOpen(x1) {
var imagePath = document.getElementById(x1).style.backgroundImage;
console.log(x1);
console.log(imagePath);
}
id 的 CSS 是:
background-image: url(../img/james_paterson_1.jpg);
到目前为止,我只记录了 2 个控制台输出 - 第一个很好,控制台按预期显示参数 x1:jamesPaterson1
第二个控制台日志不显示任何内容。
我本来希望看到url(../img/james_paterson_1.jpg)
任何人都知道为什么这没有发生?
提前谢谢了!
解决方案
尝试getComputedStyle
var imagePath = getComputedStyle(document.getElementById(x1))
.getPropertyValue('background-image');
https://developer.mozilla.org/en-US/docs/Web/API/Window/getComputedStyle
该
window.getComputedStyle()
方法返回一个对象,该对象在应用活动样式表并解决这些值可能包含的任何基本计算后报告元素的所有 CSS 属性的值。通过对象提供的 API 或简单地使用 CSS 属性名称进行索引来访问各个 CSS 属性值。
推荐阅读
- jsf - 标签的 EL 大括号表示法
- javascript - Nodejs模块“worker_threads”返回错误“错误:此Node实例使用的V8平台不支持创建Workers”
- kubernetes - 如何在 Spring Data Flow Server 中创建任务应用程序并使用 Kubernetes 挂载远程目录?
- powershell - 比较未返回正确信息的字符串
- python - 将重复的行转换为带有标题的多列
- flutter - 如何在 Flutter 中匹配容器的宽度和其他容器?
- phpunit - 在 Moodle 中以编程方式完成课程并设置成绩
- excel - 仅从工作表中复制最后一行并将其粘贴到另一张工作表的最后一行
- javascript - 在 for 循环中计算的 Javascript
- webpack - 使用 next.js 从 node_modules 导入时如何修复较少的 syntaxError