这是一种奇怪的情况,其中报告说由Javascript执行的模式叠加是不可关闭的。但是,这种情况非常非常罕见。我们有一个客户显然是在疯狂地单击该按钮以将其关闭(Fullstory捕获了活动;我的经理找到了这个实例),还有一个市场部门的用户,该用户无法删除该重叠式广告,要么。
我个人认为这是fl幸和极端情况。但是,我的任务是研究和修复它。
我已经使用浏览器堆栈检查了标准台式机格式和手机中的24种以上操作系统/浏览器组合。
我通过自己的Chrome机器上的检查器工具发现,-tag周围的链接(用于关闭叠加层)未完全包装图像。我在那里的解决方案是使链接和图像均显示为:inline-block;。我怀疑这是问题所在,但我的一部分想知道如果是这种情况,浏览器用户是否可能难以与“关闭”链接进行交互。
我也在Javascript中发现了一个错字:在行尾缺少一个分号,以检查是否存在cookie,然后再删除/显示叠加层。
<div id="cbk-XXPageDateNameXX" class="cbk-modalOverlay cbk-modal cbk-overlay">
<div class="cbk-overlayPageBlocker"> </div>
<div class="cbk-modalOverlayContent cbk-content cbk-containerObject cbk-gotham cbk-standardText">
<div class="cbk-modalOverlayCloseButton cbk-closeButton cbk-closeLink">
<a href="#" class="cbk-closeLink" title="Close Window"><img src="images/navigation/CandB_CLOSE_ICON_48.svg?$staticlink$" alt="Close" width="48" /></a>
</div>
<div class="cbk-modalOverlayInnerWrapper cbk-innerWrapper cbk-innerWrapper01">
.
.
.
</div>
</div>
</div>
function removePopUp() {
cbk_thisOverlayCookie = checkCookie(cbk_cookieName);
cbk_removePopUp = true;
$('#cbk-XXPageDateNameXX').remove();
if (!cbk_thisOverlayCookie) {
setCookie(cbk_cookieName,'viewed',30);
}
}
上述Javascript的以下行是最初末尾缺少分号的行:
cbk_thisOverlayCookie = checkCookie(cbk_cookieName);
该代码可在所有经过测试的浏览器和操作系统组合上正常运行。我在开发过程中对其进行了广泛的测试,并成功完成了多次质量检查。
我有一个用于开发的Sierra Mac,但从未见过此问题。
由于该问题似乎仅发生在2种Apple产品上(一个智能手机,另一个运行最新的Chrome浏览器的台式机),我想知道Mojave(或Mojave的Chrome)对Javascript的理解是否严格,将需要使用分号。
我对分号的使用非常严格,但在这种情况下,可能只是手指滑了一下,就错过了。
我一直无法复制它,而行销部门中报告该事件的女士在清除cookie后已解决了该问题。
自从我被要求解决此问题以来,我几乎处于机智的境地,不愿吸管。
我调整了Javascript,解决了我的错字问题,但是由于我始终无法使用浏览器堆栈上的OS / Browser的任何组合来复制它,因此不确定是否已修复它。 >
那么,您对Mojave中的Javascript严格性和分号了解多少,您是否有类似的经历可以为我提供解释?
感谢您接受冗长的(很详细的)解释!