如何解决如何从脚本标签内的javascript数组动态创建<a>链接?
我正在尝试通过在脚本标签外部声明的JS数组使用href和innerHTML创建3链接。我不确定如何将数组传递到script标签并用于创建自定义元素。 这是我的JS数组
let linkArr = [
{
"name": "A sample URL","url": "https://asampleurl.com"
},{
"name": "Another sample URL","url": "https://anothersampleurl.com"
},{
"name": "A final sample URL","url": "https://afinalsampleurl.com"
}
]
这是我正在尝试的 '''
<script link1Name=this.links[0].name,link1Href= this.links[0].url>
var a = document.createElement("a");
var link1Name = document.currentScript.getAttribute('link1Name');
var text = document.createTextNode(link1Name);
a.appendChild(text);
a.href = link1Href ;
var element = document.getElementById("links");
element.appendChild(a);
</script>
'''
解决方法
首先,不确定您要在这里做什么:
id
但是,那不是有效的HTML。您应该只有:<script link1Name=this.links[0].name,link1Href= this.links[0].url>
不过,要回答您的问题,如果<script> ... </script>
是全局声明的,而不是在其他函数或本地范围的代码中声明的,则只要您的脚本标记位于后面,您就应该能够在文档的其他任何地方引用它。这是宣言。如果linkArr
在全局声明,则将在linkArr
上可用。您可以通过在浏览器的控制台中进行window
或console.log(linkArr)
来轻松地对此进行测试。
最后,假设您可以在console.log(window.linkArr)
上访问该数组,则可以从该数组创建链接,
window
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。