- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 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');
作为常规 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]');
}
}
当我添加 javascript: 并附加最小化代码时,无论我尝试什么,我都无法让它工作。如果有人可以帮助我完成这项工作,那将是一个很大的帮助,谢谢。
最佳答案
是的,您的代码中有错误。我想向您展示如何自己找到它,而不仅仅是说它在哪里,所以这里有一个微型教程;)
从您的 JS 代码中删除行注释 (//
),因为小书签将位于一行中。您应该以代码结束:
var imgs = [];
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]');
}
}
从代码中删除换行符 并在代码前添加javascript:
协议(protocol),以便Chrome 知道内容是JavaScript 代码。您的代码现在应该如下所示:
javascript: var imgs = []; 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]'); } }
将您的小书签创建为书签并确保其可访问(即可见,以便您可以在任何 Chrome 窗口中单击它)。
如果是您的代码,它会吐出:
Uncaught TypeError: Cannot call method 'search' of null (program):1
(anonymous function)
这似乎是合理的,因为 search()
是在 str
的值上调用的,它包含 ID
属性的值,但不是所有 IMG
标签分配了一个 id
。
很酷的是,您可以单击窗口右侧的 (program):1
并调试代码、检查变量等。
关于javascript - 简单的书签不适用于 chrome,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14439430/
我正在尝试创建一个在线书签系统。我已经设法从用户那里获取 URL 并将其存储到数据库中。但我也想采用“标题和标签”谁能帮我编写代码.. function add_bm($new_url) {
我目前正在开发一个动态使用数据库的应用程序。 这意味着它被设计为可以在任何时间、任何结构上与任何数据库一起使用。 我担心的是,我希望对某些记录进行“标记”或添加书签,因此我需要使用 Filter 属性
我正在创建一些许多人称之为书签栏的东西,但在网站本身内。基本上我有一个常规的 Bootstrap navbar很少有菜单项上有“图钉”。通过按图钉,用户可以固定该菜单项以快速访问我创建的侧边栏。 现在
我最近在聊天部分了解到,如果使用书签,则可以渲染 LaTeX: http://meta.math.stackexchange.com/a/3297 stackexchange 站点都渲染代码像这样。
我有这个可爱的 javascript 书签... javascript:var nam="blablabla&name"; var els=document.getElementsByName
我经常使用网页的三种变体,1) 开发网址,2) 预览/暂存网址,以及 3) 实时网址。 我想创建一个链接(小书签?)然后我可以添加到我的书签栏,这将更改部分 URL 字符串(基本上是页面名称),然后将
这个问题在这里已经有了答案: Add to browser favorites/bookmarks from JavaScript but for all browsers (mine doesn'
我正在尝试编写一个小书签来检测用户是否在已解析的页面上,如果他不在,则应将值传递给 API。 if (window.location.indexOf("thequeue.org") >= 0) {
有没有人知道为什么下面的 JavaScript 代码在 Firefox 上没有任何问题,并且在 IE7 上也能正常工作,但在 IE8 上却不行了?我不知道,我很感激任何提示:-) 我已将该代码作为收藏
一个页面中有很多链接,我需要快速单击其中包含文本“删除”的链接。这会导致 AJAX 请求,因此需要稍微暂停一下。什么是 JavaScript 书签代码(没有库,例如 jQuery),它将快速调用直接作
我需要一个可以单击按钮的 JavaScript 书签。问题是,页面上有 100 多个按钮,它们的值都相同。名字很独特,但是很长。 元素的全名类似于: actions[http://apps.faceb
我在制作 javascript 书签时遇到了问题,其中的代码同时包含 "" 引号和 '' 引号。举例来说,我的代码如下, Temporary HTML Doc
希望大家帮帮我。我似乎无法弄清楚如何制作一个小书签来选择网页下拉菜单中的选项。 希望实现:在我的chrome浏览器上做一个书签。当我在此页面上单击它时,它将选择下拉列表并在成员框中选择级别 2 网页的
当我浏览文件系统时,我设法在一个窗口中完成了繁琐的工作。 改善人体工程学,我决定为我最常用的目录创建书签,其短名称如:'lwt'、'eve' 等。但每次打开书签时,都会创建新的目录缓冲区,即使旧缓冲区
我正在努力了解 HATEOAS。 让我们通过一个例子来工作。客户端将浏览器加载到 getemails.com。为简单起见,让我们假设对 getemails.com 的调用访问了服务器并返回一个电子邮件
我想每周在 Safari 中备份一次。告诉我如何使用终端命令导出书签?谢谢你。 最佳答案 plutil -convert xml1 -o ~/Desktop/SafariBookmarks.xml ~
我想知道我们如何从 Mac OS X 上的另一个 Cocoa 应用程序访问 Safari 书签,以一种对 future 安全的方式。 您可能知道,检索 Safari 书签的常见机制有两种: 要么阅读
有谁知道如何通过 SDK 以编程方式访问“ map ”应用程序的书签?如果可能的话,我想阅读和书写书签。有想法吗? 谢谢! 最佳答案 我很确定答案是否定的。我考虑了两种可能的解决方案: 您可以直接访问
谁能告诉我怎么转 Top 又名页面顶部链接到书签。 不太了解 JavaScript,无法实现我想要的效果。 或者,如果我使用了错误的代码,那么你能不能帮我修好它,然后把它变成小书签。 最佳答案 创建
如何在vim中设置书签?我想为一些行和函数添加书签。你如何在代码上做书签?我的代码是用 C 编写的。 最佳答案 如果您输入 ma ,它将在当前位置的当前行上创建书签,名称为 a . 例如,键入 ma在
我是一名优秀的程序员,十分优秀!