javascript - 我可以将 URL 作为变量传递吗?
问题描述
我有以下脚本没有给我想要的结果。底部的 JSFiddle 链接。
注意:这不是我的图像。我从 imgur 随机抓取了它。
我预计:
<img src="https://i.imgur.com/MiOeWrk.jpg" style="max-width:800px;">
但是我相信我明白了,但是由于某种原因,在调试时我无法在代码块中编写它。
<img src="http://thisismydomain.com/https://i.imgur.com/MiOeWrk.jpg" style="max-width:800px;">
这是我的脚本。请指教:
<div><a href="javascript:viewimage('https://i.imgur.com/MiOeWrk.jpg','video_aba');">Show Image</a></div>
<div id="jsdebug">jsdebug</div>
<div id="video_aba">video_aba</div>
<script>
function viewimage(ytlink, uid) {
var imagelink = ytlink;
document.getElementById("jsdebug").innerHTML = imagelink;
var uid = uid;
if (imagelink.length == 0) {
imageembed = "<strong>Sorry, unable to load.</strong>";
} else {
imageembed = "<img src=\"/" + imagelink + "\" style=\"max-width:800px\">";
}
document.getElementById("video_aba").innerHTML = imageembed;
}
</script>
解决方案
您的归因不正确。href
应该替换为onclick
事件。
“href”不用于 javascript 事件。它用于链接网页。
javascript 事件是onclick
, onhover
, onmouseenter
, 等等。
function viewimage(ytlink, uid) {
var imagelink = ytlink;
var uid = uid;
if (imagelink.length == 0) {
imageembed = "<strong>Sorry, unable to load.</strong>";
} else {
imageembed = `<img src="${ytlink}" style="width:800px">`;
}
document.getElementById("video_aba").innerHTML = imageembed;
document.getElementById("jsdebug").innerText = imageembed;
}
a {
color: blue;
text-decoration: underline;
cursor: pointer;
}
<div><a href="#" onclick="viewimage('https://i.imgur.com/MiOeWrk.jpg','video_aba');">Show Image</a></div>
<div id="jsdebug">jsdebug</div>
<div id="video_aba">video_aba</div>
推荐阅读
- android - 添加点击通知操作的日志
- cluster-analysis - Weka ClusterMembership 过滤器只给出 1 和 0 的概率
- python - 使用 (arr.transpose() == arr).all() 的意外对称测试结果
- mysql - 计算每个人被分配到的活动
- c# - EqualityComparer 和 Action
- java - 从 ID 选择中选择多个类
- r - 使用grid.arrange时如何减少ggplot和下一个文本之间的空间?
- python - 对象上的 Python itertools 组合
- r - 有没有办法将图网络转换为 R 中的关系数据集?
- linux - 从 windows 机器到 linux 的 Ant 自动化