gpt4 book ai didi

Javascript 随时随地更改图片

转载 作者:行者123 更新时间:2023-12-03 11:09:22 25 4
gpt4 key购买 nike

更新问题:
@Mouser,谢谢您的回答。虽然我确信代码没问题,但它实际上没有做任何事情。我相信这是因为我在正文部分的元素之后运行脚本。因此,创建了列表,然后运行代码并且 listimgx 的源发生变化,但如何才能使其实际显示命名的 src?在当前状态下,页面加载,文本项发生变化,但图片没有变化。我尝试向 ul 添加一个类,并在脚本末尾添加 ListView 刷新,但它不起作用。

原始问题:
好的,下面的代码应该检查一个二维数组值,如果它包含字符串“fi”,那么它应该将第 i.th listimg.source 更改为 write.png。
换句话说,当前的img源被设置为“mcicon.jpg”。假设 urlArray[4][1] 包含“fi”;现在我希望 listimg4.src 为“write.png”。我正在尝试使用 for 循环,但到目前为止还没有成功。我尝试了这两种方法都没有成功:
imgname.concat(i).src="write.png"
currentname.src="write.png"

//some items in my list:
<li>
<a href="#" onclick="datasent(1);"><img src="mcicon.png" id="listimg0" alt="Gummy Bears" /><span class="ui-li-count">12</span>
<h2 id="testname0"> Test Name 0</h2>
<p id="testexp0">Test Explanation 0</p>
</a>
</li>

<li>
<a href="#dog" onclick="datasent(2);"><img src="mcicon.png" id="listimg1" alt "Min Pin" />
<h1 id="testname1">Test Name 1</h1>
<p id="testexp1">Test Explanation 1</p>
</a>
</li>
<li>
<a href="#gummies" onclick="datasent(3);"><img src="mcicon.png" id="listimg2" alt="Gummy Bears" />
<h1 id="testname2"> Test Name 2 </h1>
<p id="testexp2">Test Explanation 2</p>
</a>
</li>

//and my javascript code:
<script>
var urlArray = [[1, "mc", "To Be Present", "Choose the correct answer.", 10, 0, 0],[2, "fi", "To Be Present", "Fill in the blanks using To Be Present.", 10, 0, 0]]

//those work:
document.getElementById("testname1").innerHTML = urlArray[1][2];
document.getElementById("testexp1").innerHTML = urlArray[1][3];

//this one does not work! the icon doesn't change!

for (var i=0; i<urlArray.length; i++) {
var imgname = "listimg";
if (urlArray[i][1]==="fi"){
var currentname = imgname.concat(i);
if(document.getElementById(currentname) ) //check if element exists
{
document.getElementById(currentname).src= "write.png";
//for debugging; delete from production code.
console.log(document.getElementById(currentname).src); //should write "write.png" to console.
}
}
}

最佳答案

此代码将不起作用。您正在请求 string 上的 src 属性。那不是图像元素。 document.getElementById("testname1") 也许吧。因此,将该元素的 src 设置为 currentname

urlArray = [[0, "si"], [1, "wi"], [2, "fi"]];

for (var i=0; i<urlArray.length; i++) {
var imgname = "listimg";
if (urlArray[i][1]==="fi"){
var currentname = imgname.concat(i);
if(document.getElementById(currentname) ) //check if element exists
{
document.getElementById(currentname).src= "write.png";
//for debugging; delete from production code.
console.log(document.getElementById(currentname).src); //should write "write.png" to console.
}
}
}
<img src="" id="listimg2" />

关于Javascript 随时随地更改图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27680607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com