我们都知道bookmarklet只是一些可执行的javascript代码,当我们点击它们时,它们会根据它们想要做的功能为我们做一些事情……我的问题是:
例如,我有一个Bookmarklet,不知道,就像这样:
javascript:void(window.open('http://www.pdfdownload.org/web2pdf/Default.aspx?left=0&right=0&top=0&bottom=0&page=0&cURL='+document.location.href));据我所知,bookmarklet代码(带有"&cURL=“)获取浏览器地址栏中的URL,然后对其做一些操作以获得结果。通过更改bookmarklet中的一些参数(如“在Google Maps中搜索选择”)和其他一些参数,可以对选择进行类似的操作。
我如何“反编译”一个bookmarklet,以便让它从表单中获取所需的数据(在本例中是一个URL)?
例如,假设我想在一个网页中使用上面的bookmarklet来提供一个表单,让用户输入一个URL,然后单击一个按钮来获得结果。
我见过一些从"?input=“获取URL的bookmarklet,还有一些是从"?url=”获取URL的。
如何将bookmarklet的函数传递给表单?
发布于 2011-01-22 07:37:54
在书签小程序中,使用prompt('Please enter a URL', 'default value')而不是变量实际上是最简单的。在当前网页中显示表单相当麻烦。
如果你只需要一个用户输入的值,prompt()是一个简单易用的替代方案,可以向用户询问更多信息。(当然,您也可以使用多个prompt()调用,但这可能会使用户感到困惑)
发布于 2011-01-22 11:43:00
尝试如下所示:
<form method="get" action="http://www.pdfdownload.org/web2pdf/Default.aspx">
<input type="hidden" name="left" value="0">
<input type="hidden" name="right" value="0">
<input type="hidden" name="top" value="0">
<input type="hidden" name="bottom" value="0">
<input type="hidden" name="page" value="0">
<input type="text" name="cURL">
<input type="submit">
</form>发布于 2011-01-29 08:27:44
也许你可以在你的bookmarklet中调用一个javascript文件:
javascript:void((function(){var%20e=document.createElement('script');e.setAttribute('type','text/javascript');e.setAttribute('src','http://www.example.com/js.js');document.body.appendChild(e)})())然后在js.js上创建iframe
var site = location.href;
document.body.innerHTML += "<div style='background-color:white;z-index:1000;position:fixed;right:0;top:0' width='300' height='250'><iframe src='http://www.example.com/bookmarklet.php?q=" + site + "' /></div>";https://stackoverflow.com/questions/4764942
复制相似问题