我将有一个非常长的图像阵列,我知道应该有一个更好的方法来编写它.
目前它看起来像这样:
var imgnames=new Array("img[src*='edit']", "img[src*='delete']", "img[src*='copy']");
var imgs = document.querySelectorAll(imgnames);
Run Code Online (Sandbox Code Playgroud)
但是我希望通过这样的方式缩短数组中项目的名称:
var imgnames=new Array("edit", "delete", "copy");
var imgs = document.querySelectorAll("img[src*='???imgnames???']");
Run Code Online (Sandbox Code Playgroud)
但是不能让它工作,我想我的引言都在错误的地方.谢谢!
你可以"手工"做到:
function buildPaths() {
var res = [];
for (var i=0; i<arguments.length; i++) {
res.push( "img[src*='" + arguments[i] + "']");
}
return res;
}
var imgnames=buildPaths("edit", "delete", "copy");
var imgs = document.querySelectorAll(imgnames);
Run Code Online (Sandbox Code Playgroud)
或者更简洁:
var paths = ["edit", "delete", "copy"];
var fullPaths = paths.map(function(x) { return "img[src*='" + x + "']"; } );
var imgs = document.querySelectorAll(fullPaths);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
60 次 |
| 最近记录: |