async function setLatexSize(arr_latexImg, fontSize) {
for (let i = 0;i< arr_latexImg.length;i++){
let newImg = new Image()
newImg.src = arr_latexImg[i].src
await new Promise((resolve) => {
newImg.onload = function() {
arr_latexImg[i].height = fontSize * newImg.height / 16
arr_latexImg[i].width = fontSize * newImg.width / 16
arr_latexImg[i].setAttribute('width', fontSize * newImg.width / 16);
arr_latexImg[i].setAttribute('height', fontSize * newImg.height / 16);
resolve()
}
})
}
}
我想跟踪字号的改变来设置图片的宽高,通过 for 循环遍历每一个 img 元素,之后通过 onload 里面来设置 img 元素的宽高,但是现在的问题是当我 console 出arr_latexImg[i]
的时候,他标签上面是有宽高属性的,但是我页面中的元素本身依旧是原来的样子,没有变化
上面是页面中的元素标签,下面的图是我在 console 中显示的arr_latexImg[0]
,arr_latexImg[0]
中的属性是设置上了,但是元素本身依旧没有,
arr_latexImg
这个数组是通过 jq 获取元素,完了 each 一个新的数组,r 这个数组就是给我传的arr_latexImg
,下面是压缩后的代码。我想知道目前的问题是在哪块,是我方法哪块写的有问题吗
t = $("div.table").children().find("img.hex-exe-img"),
r = [];
$.each(t, function(e, n) {
r.push(t[e])
}),
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.