我需要一个用户导航到某个页面,该页面具有某个充满有用文本的 div。然后单击我的书签并将该 div 中的文本发送回我的服务器,该服务器与当前域不同。我已经成功地在书签点击上插入了 jQuery 并选择了文本。现在我需要想办法将该文本跨域发送到我的服务器。我用 jQuery 尝试了 JSONP,但我的文本对于 url 来说太长了。我的第二个想法是打开一个新窗口并从我的域加载一个页面,然后以某种方式将所选文本插入新窗口,之后用户可以单击提交并将该数据发布到我的服务器。由于 javascript 跨站点原因,这不起作用。任何人都有这方面的经验或这样做的想法?谢谢。
我制作了这个书签:
javascript:(function(){var s=document.createElement('script');s.setAttribute('src','http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');document.getElementsByTagName('body')[0].appendChild(s);$('#hldIntMain').hide();$('#fadeBackground').hide();return false;})()
Run Code Online (Sandbox Code Playgroud)
格式化代码:
// Add in jQuery
var s=document.createElement('script');
s.setAttribute('src','http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');
document.getElementsByTagName('body')[0].appendChild(s);
// Make page viewable
$('#idIntMain').hide();
$('#idBackground').hide();
return false;
Run Code Online (Sandbox Code Playgroud)
但每当我运行它时,它会在完成工作后加载一个空白页面.我究竟做错了什么?
我正在构建一个JS书签,它允许我捕获用户在浏览器中选择的文本并将其发送到Web应用程序.我目前检查了几个教程,并有一个如下所示的脚本:
javascript:var t;try {t=((window.getSelection&&window.getSelection())||(document.getSelection&&document.getSelection())||(document.selection&&document.selection.createRange&&document.selection.createRange().text));}catch(e){t="";}alert(t);
Run Code Online (Sandbox Code Playgroud)
为了使它更容易,这里的代码更易读:
javascript:
var t;
try {
t=((window.getSelection&&window.getSelection()) || (document.getSelection&&document.getSelection()) || (document.selection&&document.selection.createRange&&document.selection.createRange().text));
}catch(e)
{
t="";
}
alert(t);
Run Code Online (Sandbox Code Playgroud)
我当前的代码抓取了所选的文本并发出警告,以便我可以看到已捕获的内容.但是,文本的格式对我来说很重要,所以我真正想做的就是在本文中抓取任何HTML.事实上,我认为最好还是找出用户在页面中选择的位置并从所选内容的开头和结尾查找,找到最近的HTML标签,然后抓住其中的内容.(因为用户无法判断他们是否选择HTML或不容易)
我更习惯使用JQuery来做DOM选择,所以现在这有点过头了.(除非你可以使用带有书签的JQuery ......你可以吗?)
谁能帮我这个?(即使只是指着我正确的方向也会很棒,我这样做是为了一个爱好学习项目,所以我很高兴自己想出一些东西.)
我需要识别JavaScript小书签中的长按.所以,我不能使用jQuery,也不能使用onclick()事件和类似的东西.有可能,怎么样?
我正在制作一个客户端拖放文件上传脚本作为书签。在上传之前,我使用 File API 将图像读取为 base64 格式并将它们显示为缩略图。
这就是我的缩略图的样子。我希望它们看起来更方,但不会失去纵横比。(请忽略进度条)

这就是我希望缩略图的样子,它们居中并根据 min(height,width) 进行裁剪。

我可以仅使用 javascript 执行此操作吗(通过脚本更改样式即可)?请尝试确保您的解决方案适合 base64 图像(在通过文件 API 作为数据 URL 读取图像后)。
我已经在这里上传了这些确切的图像集。
谢谢您的帮助。
我开发了一个小书签,它工作得很好,直到chrome最后更新.
现在它在Facebook上点击它时会运行"不安全的内容",它甚至不会在Twitter上启动.
我想知道锄头,以避免"不安全的内容"和铬块阻止.
这是代码:
书签
if (typeof jQuery === "undefined") {
var script_tag = document.createElement('script');
script_tag.setAttribute("type","text/javascript");
script_tag.setAttribute("src","http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js");
script_tag.onload = function() { $.getScript('http://www.silviolorusso.com/scrolltv/scrolltv.js',function(){main();}); };
script_tag.onreadystatechange = function () {
if (this.readyState == 'complete' || this.readyState == 'loaded') $.getScript('http://www.silviolorusso.com/scrolltv/scrolltv.js',function(){main();});
};
document.getElementsByTagName("head")[0].appendChild(script_tag);
} else {
$.getScript('http://www.silviolorusso.com/scrolltv/scrolltv.js',function(){
main();
});
}
Run Code Online (Sandbox Code Playgroud)
注入js
var status = 0;
$bottom = 100;
$position = 0;
function scrollTV() {
if ( ($(document).scrollTop() + $(window).height() - 500 ) >= $position ) {
$position = $position + 50;
$('html, …Run Code Online (Sandbox Code Playgroud) 我是 bookmarklet 编码的新手,我遇到了一个问题,即常规 javascript 在浏览器中运行良好,但在 bookmarklet 版本中不起作用。
我找到了一个书签,它可以找到一个图像并将其转换为 BB 代码并且工作正常,但是它加载了 jQuery,我不希望它一直这样做。所以我基本上只是想消除对它的需求,但现在它不再作为书签工作了。
原来的书签是这样的:
javascript:document.body.appendChild(document.createElement('script')).src='http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js';var%20pictureurl=jQuery('img[id$=%22myImage%22]').attr('src');var%20linkurl=document.location.href;alert('%5BURL='+linkurl+'%5D%5BIMG%5D'+pictureurl+'%5B%2FIMG%5D%5B%2FURL%5D');
Run Code Online (Sandbox Code Playgroud)
我作为常规 JS 代码工作的 javascript 是:
// Create array variables
var imgs = [];
// Put all of the documents tags in to the arrays
imgs = document.getElementsByTagName('img');
var pictureurl = '';
var linkurl = document.location.href;
for(var i = 0; i < imgs.length; i++){
var str = imgs[i].getAttribute('id');
var find = str.search("myImage");
if(find != -1){
pictureurl = imgs[i].getAttribute('src');
alert('[URL=' + linkurl + '][IMG]' + pictureurl + '[/IMG][/URL]');
} …Run Code Online (Sandbox Code Playgroud) 我一直在尝试PHP转发到最后制作一个模态窗口,它只出现一个链接而当前页面上没有模态脚本.
使用PHP,您可以像这样前进:
<?php
header( "Location: http://example.com" );
Run Code Online (Sandbox Code Playgroud)
此外,您还可以使用备用URL方案转发,例如,您可以打开如下所示的SMS消息:
<?php
header( "Location: sms:867-5309" );
Run Code Online (Sandbox Code Playgroud)
例如,您可以让" http://yoursite.com/phone-number.php "在支持设备上启动短信对话,并保持您打开的页面.
我也看到人们使用URL Scheme"javascript:"从浏览器地址栏或书签中运行javascript.
我的问题是:每当我尝试使用PHP头重定向执行Javscript时都没有任何反应,如下所示:
<?php
header( "Location: javascript:alert('hey!');" );
Run Code Online (Sandbox Code Playgroud)
我的问题是:为什么它不会执行,有没有办法让它工作?
我想制作一个书签,将我带到isup.me并检查无法加载的网站.
所以基本上就像在控制台中运行它一样:
window.location.href = "http://isup.me/" + window.location.host;
Run Code Online (Sandbox Code Playgroud)
这应该导航我 http://isup.me/site_I_want_to_check
这适用于已加载的站点,但在无法加载的站点上失败.这里window.location.href包含地址栏中显示的字符串:

这是window.location.href在一个无法访问的网站上:

正如您在上面的屏幕截图中看到的,其值window.location.href与地址字段中显示的值不匹配.而不是返回" http://www.minetest.net "我得到"数据:text/html,chromewebdata",当我看到window.location.host它的值实际上返回一个空字符串.
如何在查看Chrome的内部失败网页时通过JavaScript 获取地址栏的可见内容,通知我无法访问该网站?
这可能非常简单,但我是一个新手.我使用这样的东西在URL的末尾添加输入
javascript:
(function() {
var val= prompt("Enter #","");
if (val)
location="http://www.test.com?param="+escape(val);
})()
Run Code Online (Sandbox Code Playgroud)
但现在我想在另一个网址的中间添加一些内容,例如:
http://www.test.com/ENTERSOMETHINGHERE/html/stuff/
Run Code Online (Sandbox Code Playgroud)
我不知道我在做什么.
bookmarklet ×10
javascript ×10
jquery ×2
base64 ×1
click ×1
cross-domain ×1
cross-site ×1
css ×1
html ×1
hyperlink ×1
php ×1
twitter ×1
url-scheme ×1