越来越多的网站使用模式弹出窗口。有时这种使用可以说是合理的,但更常见的是,我看到糟糕的用户体验就像弹出窗口询问我的电子邮件地址,而我甚至还没来得及浏览一开始把我带到他们网站的文章。不用说,我正在做一个浏览器扩展来摆脱这些。
类似的扩展所使用的方法似乎是让用户识别网站是否有一个不需要的模式弹出窗口,并在按钮按下时删除最可能的候选(例如最高z索引)。如果没有更好的东西出现,这个设计是足够好的,但我想能够避免一个按钮按下的需要,只是检测一个网站是否显示一个模式弹出。
当前方法
寻找一个讨厌的Z指数。这些弹出窗口通常使用1000+的z索引进行编码,以确保无论做出了什么其他设计决策,它们都显示在顶部。虽然这是一个很好的启发,但并不可靠。
检查html和body上的overflow属性。许多站点在使用弹出窗口时将禁用滚动,因此,如果站点不能滚动,则这是一个强有力的指示。无论如何,我正在启用滚动,所以这并不是什么额外的工作。
存储用户决定列入黑名单的站点的历史记录。如果没有100%的万无一失的方法,这仍然是一个改进要求每次按下按钮。
有没有办法检查HTML元素(和/或任何对应的CSS、JS等等)并确定它是否是模态弹出窗口?

最佳答案

我认为这些方法已经足够了,对于用户体验,如果我是一个用户,我想知道你在做什么,也许你可以添加两种模式来控制用户:确认和恢复,你可以分析哪些站点用户没有删除modal
确认:使用Dom检查器让用户知道将删除哪个Dom,并选择“是”或“否”执行。
恢复:有时可能删除了用户不期望的模式。您可以保存站点URL来记录和分析它。

关于javascript - 如何识别网站是否显示模式弹出窗口?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51691155/

10-12 12:28
查看更多