我是製作Chrome擴展程序的新品牌,並且已經完成了簡單的教程,但我無法找到所需的內容。我希望擴展程序允許用戶選擇網頁上的圖像,然後將該圖像的URL複製到擴展程序中。誰能幫我嗎?我確信如果我看到一個例子,我會更好地理解擴展如何與頁面交互。Chrome擴展程序,點擊複製圖片網址
1
A
回答
4
從我對你的問題的理解中,我想說你想創建一個context menu項目,當你右鍵點擊一個圖像時顯示。例如,在你的後臺腳本,使用方法:
chrome.contextMenus.create({
title: "Use URL of image somehow",
contexts:["image"],
onclick: function(info) {
handleImageURL(info.srcUrl);
}
});
function handleImageURL(url) {
// now do something with the URL string in the background page
}
這將增加,顯示了對所有頁面的上下文菜單項,但只有當你在圖像上單擊鼠標右鍵。當用戶選擇它時,菜單項的onclick
處理程序將以圖像的URL作爲參數觸發handleImageURL
。該URL可以用任何您喜歡的方式進行處理,例如保存在localStorage
列表中,通過Ajax發送到服務器,或者在當前選項卡中通過passed in a message收聽到content script。
編輯與替代:
你可能想的是被注入到每個頁面content script。該腳本可以在加載時的事件偵聽器的每一個圖像元素綁定:
// in my_content_script.js...
var imgs = document.getElementsByTagName("img");
for(var i = 0, i < imgs.length; ++i) {
imgs[i].addEventListener("click", function() {
alert(this.src);
// do things with the image URL, this.src
});
}
要其注入的example.com
所有子域,你的清單將包括:
...
"content_scripts": {
"matches":["*://*.example.com/*"],
"scripts":["my_content_script.js"]
},
...
注意,這個純JS解決方案不會將偵聽器附加到加載後動態添加的圖像上。要做到這一點在你的內容腳本使用jQuery,使用:
$(document).on("click", " img", function() {
alert(this.src);
});
,並添加您的jQuery文件名設置你的清單中scripts
陣列,旁邊my_content_script.js
。
0
在此基礎上Google Chrome Extension sample:
var images = [].slice.apply(document.getElementsByTagName('img'));
var imageURLs = images.map(function(image) {
return image.src;
});
chrome.extension.sendRequest(images);
對於更詳細的例子(例如,如何處理該請求),你可以看看這個擴展我編寫的名爲Image Downloader
相關問題
- 1. Chrome擴展程序:點擊鏈接時更改鏈接網址
- 2. Chrome擴展程序導航到網址
- 3. Chrome擴展程序外部網址
- 4. Chrome擴展程序跳轉到網址
- 5. 模擬點擊Chrome擴展程序
- 6. Chrome擴展程序:處理點擊
- 7. Chrome擴展程序:複製文本
- 8. 將Chrome擴展程序限制爲某些網址?
- 9. Chrome擴展使鼠標點擊擴展
- 10. 試圖讓我的Chrome擴展程序,點擊頁面
- 11. Chrome擴展程序:點擊編輯當前網址,然後重定向到編輯的網址
- 12. Chrome擴展程序隱藏地址欄
- 13. Chrome擴展程序支持將圖像複製到剪貼板?
- 14. Google chrome rehost圖片擴展
- 15. Chrome擴展程序
- 16. Chrome擴展程序
- 17. Chrome瀏覽器擴展程序:當用戶點擊圖標時導航到一個網址
- 18. 將網址添加到html擴展程序中Chrome
- 19. 在Chrome擴展程序中訪問新書籤的網址
- 20. 使用Chrome擴展程序獲取當前網址
- 21. Chrome擴展程序無法在HTTPS網址上工作
- 22. 爲某些網址啓用Chrome擴展程序?
- 23. 使用Chrome擴展程序在特定時間打開網址
- 24. Javascript與通配符匹配的網址 - Chrome擴展程序
- 25. 從Chrome擴展程序的Javascript中獲取標籤網址
- 26. 通過Chrome擴展程序獲取加載網址的來源?
- 27. Chrome擴展程序:避免重複?
- 28. Chrome擴展程序搜索網站?
- 29. Chrome擴展程序的網頁
- 30. 恢復舊的Facebook照片查看器 - Chrome擴展程序
你能澄清你的意思是什麼「將URL複製到擴展名*」中?你到底想做什麼? – apsillers
我的意思是,當我點擊任何圖片時,標籤的src屬性可供Chrome擴展程序訪問,因此我可以使用它進行操作。 – Keith
添加了一個可能更接近您想要的選項。 – apsillers