iPad 野生动物园书签 - 为什么需要 2 次点击



我有一个这样的书签:

javascript:(function()%7Bvar%20x=document.createElement('SCRIPT');x.type='text/javascript';x.src='http://tmxhost.com/mail/clippad.js?'+(new%20Date().getTime()/100000);document.getElementsByTagName('head')%5B0%5D.appendChild(x);%7D)();

但是当我点击它时,什么也没发生,直到我第二次点击它,然后它写入 DOM。 有人知道为什么吗?

书签将脚本附加到页面:http://tmxhost.com/mail/clippad.js

该脚本分为两部分。1.) 添加 jQuery 到页面。2.) 使用 jQuery。

问题是在运行第二部分之前没有检查 jQuery 是否已加载,因此通常第二部分会在第一次尝试时失败。

当您第二次单击书签时,jQuery 已完成加载,因此第二部分按预期运行。

有一些很好的工具和教程可以在书签中使用jQuery:https://www.google.com/search?q=jquery+bookmarklet

要考虑的另一点是,在书签中使用$(document).ready通常毫无意义,因为书签几乎总是在文档准备就绪后使用。

最新更新