javascript - JQuery附加图像未显示
问题描述
对于这个代码块
$(document).ready(() => {
for (let i = 0; i < 10; i++) {
$("#main").append(factory());
}
});
这将显示图像:
function factory() {
return $('<image class="champ-icon rounded-circle" src="resources/irelia.jpg" />');
}
虽然这不是
function factory() {
let $champIcon = $(document.createElement("image"))
.addClass("champ-icon rounded-circle")
.attr("src", "resources/irelia.jpg");
return $champIcon;
}
我也在使用 Bootstrap 4。
该页面目前只是一个静态模型。我想从本地服务器提供给它的数据中动态构建元素。
我实际上只是在周末搞砸了 HTML/CSS 和 jQuery,所以我不确定这里出了什么问题。两个函数不应该返回相同的 jQuery 对象吗?
谢谢!
CSS 类
.champ-icon {
width: 100px;
height: 100px;
}
编辑:用普通的 javascript 创建它也可以。
function factory() {
let img = new Image();
img.src = "resources/irelia.jpg";
img.className = "champ-icon rounded-circle";
return img;
解决方案
那是因为您正在尝试以编程方式<image>
在 html 中创建元素,但...不存在。要在页面上插入元素,您应该使用<img src="">
,而不是<image...>
. 更改此行
let $champIcon = $(document.createElement("image"))
至
let $champIcon = $(document.createElement("img"))
它应该工作。
推荐阅读
- image - 计算屏幕覆盖率
- java - 我似乎在 if 语句和 removeDie 中有布尔等于错误我在删除一个骰子时遇到问题,如何解决这两个问题?
- reactjs - React Hook useCallback 缺少依赖项。要么包含它,要么移除依赖数组 react-hooks/exhaustive-deps
- javascript - 如何使用foreach循环的结果异步调用函数
- python-3.x - 为什么我的 for 循环不会写入所有创建的文件?
- angular - 将角度从 7 升级到 8
- spring-boot - 如何在kafka中获得消费者对经纪人的确认
- python - SQLalchemy Integer TypeDecorator for Python IntFlag:过滤多个条目
- javascript - 在 React 项目中,我应该在哪里传递 Bearer Authentication Token?
- java - 将 yaml 文件标记为已弃用