繁体   English   中英

手机和平板电脑上的代码行为有所不同

[英]Code behaving different on phones and tablets

我建立了一个页面,该页面可以在Firebase数据库中读写信息。 现在,这在我的PC上以及在检查器中模拟不同的手机和笔记本电脑时都可以正常工作。 问题是,在实际的android或iOS上,引用似乎已关闭。 它仍然保存到数据库中,但是放置在错误的位置。 我想念什么?

这是在数据库中设置值的行:

    database.ref("birds/birdList/" + [newId] + "/seenE").set(checkValue);

例如,在iPhone上,此行根据用户的输入将“ birds / birdList”设置为“ seenE:true”或“ seenE:false”。

我在想这可能与var newId有关 ,在触摸屏上单击并没有按原样传递ID,但不知道如何在实际的电话上进行跟踪(在检查器中,可以记录该活动,但是正如我所说的,无论如何它都可以模拟为电话在我的计算机上运行)。

function getId() {
var _id = document.activeElement.id;
newId = _id.substring(8);

}

我使用单击事件来触发我的功能。 任何输入表示赞赏!

尝试使用移动设备的touchstart / touchend事件代替点击?

您可以捕获eventType并将其附加到实际事件:

// Use touchstart if available, fallback to click
var clickEventType = document.ontouchstart !== null ? 'touchstart' : 'click'; 

并在事件上使用clickEventType 通常,这似乎对我有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM