为了账号安全,请及时绑定邮箱和手机立即绑定

我如何确保即使页面布局已更改,也可以将保存的单击坐标重新放置到同一位置?

我如何确保即使页面布局已更改,也可以将保存的单击坐标重新放置到同一位置?

绝地无双 2019-10-09 15:53:18
我将点击坐标存储在我的数据库中,然后稍后重新加载它们,并在发生点击的站点上显示它们,如何确保它加载在同一位置?存储单击坐标显然是简单的步骤,但是一旦用户返回并且他们的窗口较小或较大时,一旦有了它们,坐标是错误的。我是否要以错误的方式处理此问题,是否还应该存储元素ID / DOM引用或类似性质的内容?同样,此脚本将在具有多个布局的许多不同网站上运行。在布局与坐标存储方式无关的情况下,有没有办法做到这一点?
查看完整描述

3 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

我更喜欢不使用id选择器,而只是递归地使用。


function getPathTo(element) {

    if (element.tagName == 'HTML')

        return '/HTML[1]';

    if (element===document.body)

        return '/HTML[1]/BODY[1]';


    var ix= 0;

    var siblings= element.parentNode.childNodes;

    for (var i= 0; i<siblings.length; i++) {

        var sibling= siblings[i];

        if (sibling===element)

            return getPathTo(element.parentNode)+'/'+element.tagName+'['+(ix+1)+']';

        if (sibling.nodeType===1 && sibling.tagName===element.tagName)

            ix++;

    }

}


查看完整回答
反对 回复 2019-10-09
  • 3 回答
  • 0 关注
  • 443 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号