如何在 Javascript 中将超链接列表(及其事件和属性)动态添加到 div?
如何在Javascript中动态地将锚标记添加到div?
IT技术
javascript
2021-03-17 16:45:24
6个回答
这是一个纯 Javascript 替代方案:
var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a');
aTag.setAttribute('href',"yourlink.htm");
aTag.innerText = "link text";
mydiv.appendChild(aTag);
我建议您为此使用jQuery,因为它使过程更容易。下面是一些使用 jQuery 的例子:
$("div#id").append('<a href="' + url + '">' + text + '</a>');
如果你需要一个列表,就像在 a 中一样<ul>
,你可以这样做:
$("div#id").append('<ul>');
var ul = $("div#id > ul");
ul.append('<li><a href="' + url + '">' + text + '</a></li>');
var newA = document.createElement('a');
newA.setAttribute('href',"http://localhost");
newA.innerHTML = "link text";
document.appendChild(newA);
<script type="text/javascript" language="javascript">
function createDiv()
{
var divTag = document.createElement("div");
divTag.innerHTML = "Div tag created using Javascript DOM dynamically";
document.body.appendChild(divTag);
}
</script>
另一个变体在不需要 setAttribute 的地方很好地结束了。
如果 Wetfox 可以变干,则不需要 3 条线。
var saveAs = function (filename, content) {
if(filename === undefined) filename = "Unknown.txt";
if(content === undefined) content = "Empty?!";
let link = document.createElement('a');
link.style.display = "none"; // because Firefox sux
document.body.appendChild(link); // because Firefox sux
link.href = "data:application/octet-stream," + encodeURIComponent(content);
link.download = filename;
link.click();
document.body.removeChild(link); // because Firefox sux
};
谢谢您的帮助。