【发布时间】:2021-05-15 10:37:02
【问题描述】:
好的,让我们使用 jQuery,使用类看起来更动态......所以根据效果添加类,并且应该为 div 添加背景。
const iconHover = function() {
const moveLeft = -305;
const moveDown = 3;
if (setup.battle.enemies[0]) {
setup.battle.enemies[0].tempEffect.forEach((effect: effectInterface, index: number) => {
const _icon = $('#grid-item-' + index);
_icon.addClass(effect.iconClass)
});
}
for (let i = 0; i < 4; i++) {
$('#grid-item-' + i).hover(() => {
$('div#icon_' + i).show()
}, function() {
$('div#icon_' + i).hide()
})
$('#grid-item-' + i).mousemove(event => {
$("div#icon_" + i)
.css('top', event.pageY + moveDown)
.css('left', event.pageX + moveLeft)
})
}
}
这在理论上可行,考虑到它将类添加到所需的元素,这是一个角色的效果图标网格。
<div class="iconContainer">
<div id="grid-item-0"></div>
<div id="grid-item-1"></div>
<div id="grid-item-2"></div>
<div id="grid-item-3"></div>
<div id="grid-item-4"></div>
</div>
类被正确添加到图标div中,并且src图像正确返回。
.superiorFlame {
background: url("img/icons/superiorFlame.png") no-repeat center center fixed;
background-size: cover;
}
但是在 div 中,即使使用类,这似乎也不起作用。
添加了元素的网格 console.log。
【问题讨论】:
-
This theoretically works,但它不行,我们如何在没有最小代码功能的情况下为您提供帮助......stackoverflow.com/help/minimal-reproducible-example -
我添加了其他信息。
-
你确定 effect.iconclass 有正确的值->superiorFlame?你能显示console.log
-
是的,这将正确的类添加到图标 div,我添加了控制台图像。所以我提到,理论上,这应该显示图标的图像,但我可能会遗漏一些东西。
-
没有看到关于 id #icon 的代码,你能看到我的答案吗..
标签: jquery css typescript