使用拖放功能和可拖动项目所需的容器,或者您可以使用IF && statement
。
只是想澄清另一种方法是否会更好地迎接同一场比赛。
理想情况下,是否有一种真正的代码方式:
If(box.left within(20px) of container.left && box.top within(20px) of container.top) { // do something } else {do something else }
否则它将是很多代码,我试图减少它。这可能吗?
已更新
完整代码:
var letter = document.getElementById('box_' + element.id.substr(element.id.indexOf('_') + 1, 1));
var home = document.getElementById('answerBox_' + element.id.substr(element.id.indexOf('_') + 1, 1));
letter = letter.getBoundingClientRect();
home = home.getBoundingClientRect();
if(Math.abs(letter.left - home.left) <= 20 && Math.abs(letter.top - home.top ) <= 20) {
{
console.log('close enough');
} else {
console.log('Not close enough');
}
答案 0 :(得分:1)
使用Math.abs(),element.offsetLeft和element.offsetTop
例如:
if(Math.abs(box.offsetLeft - container.offsetLeft) <= 20 &&
Math.abs(box.offsetTop - container.offsetTop ) <= 20) {
//do something
}