javascript - 使用 JavaScript 将参数添加到 url

标签 javascript getelementbyid url-parameters getelementsbyclassname

我想添加网址参数到我的img src,可以使用getElementById来完成,但不能使用getElementsByClassName 。我更喜欢使用 getElementsByClassName ,因为它对我的目的更有意义。这是我正在使用的代码:

<img id="parameter" src="http://url-to-image.com/image.jpg" style="width: 100%">

<script>
var image = document.getElementById("parameter");
var imageSrc = image.getAttribute("src");
image.setAttribute("src", imageSrc + "?w=" + viewportWidth + "&h=" + viewportHeight + "&dpr=" + dpr + "&fit=crop");
</script>

上面的代码效果很好,但是使用

<img class="parameter" src="http://url-to-image.com/image.jpg" style="width: 100%">

<script>
var image = document.getElementsByClassName("parameter");
var imageSrc = image.getAttribute("src");
image.setAttribute("src", imageSrc + "?w=" + viewportWidth + "&h=" + viewportHeight + "&dpr=" + dpr + "&fit=crop");
</script>

不会向 img src 添加任何内容。 url 参数应添加到所有具有“parameter”类的图像中。如果有人能在这方面帮助我,我会很高兴。

最佳答案

正如其他人所说,getElementsByClassName ,始终返回列表。 我想你可以看看querySelector方法代替。

var image = document.querySelector(".parameter");

那么你不需要查看列表中的第一项。

性能 从性能 Angular 来看, getElementByClass 会更快。 Performance test

关于javascript - 使用 JavaScript 将参数添加到 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55047039/

相关文章:

ruby-on-rails - 如何在 Rails 测试中测试 params 散列?

javascript - 如何在每个屏幕上找到特定位置?

javascript - 如何在 JavaScript 中检测 "different object types"? (数组与 Json 与日期等...)

javascript - 匹配正则表达式中单个字符的第 n 次出现

javascript - 用函数交换 img src (JavaScript)

Javascript:快速而肮脏的空 div 或其他元素

php - dirname 是否足以防止目录遍历攻击?

python - 如何从网址中提取标题?

javascript - 问题与 firebase 和 native react ,添加数据

javascript - SVG 文档中的 getElementById