我为trello构建了一个非常方便的Chrome扩展程序,该扩展程序允许我将纯文本列表复制到剪贴板,由于某种原因,这已经不是问题。一切都非常好,我想将其分发给我的队友,因为我们通过闲聊和短信进行交流,但采用trello进行组织。

令我惊讶的是,我的几个队友主要在手机上使用trello,并且向非会员发送文本列表的功能比打开笔记本电脑进行操作更为方便。

我绝对知道chrome mobile在可预见的将来将不允许扩展,而我的团队也不想为了简单的“加电”而花钱参加trello商务舱。在此之前,有什么方法可以在移动设备上向Web应用程序添加功能/注入JavaScript?

最佳答案

您可以使用javascript:协议编写一个书签。这就是我在移动Safari中做的相当简单的事情。在相关页面上,您只需单击小书签即可执行一些JavaScript。例如:



var script = document.getElementById('script');
var loader = document.getElementById('loader');

function update(){
  loader.textContent = (
    encodeURIComponent(`!function(){var d,s=(d=document).createElement('script');s.src="${encodeURI(decodeURI(script.value))}";d.head.appendChild(s)}()`)
  );
}

script.addEventListener('update', update);

update();

input {
  width: 200px;
}

textarea {
  width: 100%;
  height: 50px;
}

<a href="javascript:alert('Hello%20World')">Hello World</a>
<br/>
<input id="script" value="https://pastebin.com/raw/gxCbGimA"/>
<br/>
<a href="javascript:!function()%7Bvar%20d%2Cs%3D(d%3Ddocument).createElement('script')%3Bs.src%3Dd.getElementById('script').value%3Bd.head.appendChild(s)%7D()">Run Script</a>
<br/>
<textarea id="loader"></textarea>





作为记录,这些是脚本:

alert("Hello World");




!function(){
  var d,s=(d=document).createElement('script');
  s.src=d.getElementById('script').value;
  d.head.appendChild(s)
}()


您可以将这样的链接另存为移动书签,以在单击它们时执行。

关于javascript - 如何将Chrome扩展功能移植到移动设备(特别是jquery和trello)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37309490/

10-10 17:08