Tôi có thể thêm tùy chọn nhấp chuột phải trong Google Chrome không?


18

Trong Google Chrome, nếu tôi chọn một đoạn văn bản và nhấp chuột phải vào nó, tôi có tùy chọn:

'Tìm kiếm trên Google cho [văn bản]'

Tôi thấy điều này cực kỳ hữu ích nhưng tôi cũng muốn có thể thêm các tùy chọn của riêng mình.

Ví dụ: tôi muốn thêm khả năng tìm kiếm amazon.co.uk bằng văn bản đã chọn hoặc truy cập thẳng vào bản đồ Google bằng văn bản đã chọn (ví dụ: địa chỉ hoặc mã bưu điện), v.v.

Tôi có thể sắp xếp thêm chức năng này bằng cách sử dụng PhraseExpress nhưng muốn có thể thực hiện trực tiếp từ Chrome - điều đó có khả thi không?

Câu trả lời:


12

Đây là một tiện ích mở rộng sử dụng API Trình đơn ngữ cảnh để thêm tùy chọn vào menu nhấp chuột phải cho văn bản đã chọn và cho phép bạn xác định các tìm kiếm tùy chỉnh của riêng mình.

Hãy thử http://maps.google.com/maps?q=TESTSEARCHcho Google Maps và http://www.amazon.co.uk/s/?url=search-alias%3Daps&field-keywords=TESTSEARCHcho Amazon.co.uk.


Vâng, tôi nghĩ rằng điều này làm chính xác những gì tôi muốn - cảm ơn. Nhân tiện, cần thêm thuật ngữ TESTSEARCH trong chuỗi của bạn để sử dụng từ hoặc cụm từ đã chọn và nó hoạt động rất tốt.
andygrunt

Tôi đã chỉnh sửa câu trả lời của mình để phản ánh điều đó.
gdejohn

15

Có một API Trình đơn ngữ cảnh có sẵn trong các kênh dành cho nhà phát triển và beta. Bạn có thể sử dụng nó để viết các phần mở rộng của riêng bạn, thêm các tùy chọn vào menu chuột phải. Lưu ý rằng điều này sẽ chỉ hoạt động cho Google Chrome phiên bản 6 trở lên.

Dưới đây là một ví dụ từ thư viện tiện ích mở rộng chính thức:

Tôi cũng đã viết ba của riêng tôi, dựa trên mã đó:

Bạn có thể tự cài đặt những thứ đó bằng rủi ro bằng cách nhấp chuột phải vào các liên kết, nhấp vào Lưu liên kết dưới dạng , tìm các tệp trên máy tính của bạn và kéo chúng vào cửa sổ Google Chrome.

Đọc về API tại đây:

Để tự viết, bạn cần một tệp manifest.json, trông giống như thế này:

{
   "background_page": "background.html",
   "description": "Add a context menu item to search for selected text at Google Maps.",
   "icons": {
      "16": "icon16.png",
      "48": "icon48.png"
   },
   "minimum_chrome_version": "6",
   "name": "Google Maps Right Click",
   "permissions": [ "contextMenus", "tabs" ],
   "version": "1.0"
}

Bạn cũng cần một tệp background.html, trông giống như thế này:

<script>

function searchgooglemaps(info)
{
 var searchstring = info.selectionText;
 chrome.tabs.create({url: "http://maps.google.com/maps?q=" + searchstring})
}

chrome.contextMenus.create({title: "Search Google Maps", contexts:["selection"], onclick: searchgooglemaps});

</script>

Cuối cùng, bạn nên có ít nhất một biểu tượng 16 × 16 pixel cho menu ngữ cảnh và biểu tượng 48 × 48 pixel cho trang quản lý tiện ích mở rộng. Bạn cũng có thể chỉ định biểu tượng 128 × 128 pixel, được hiển thị trong khi cài đặt và biểu tượng 32 × 32 pixel nếu bạn muốn gửi tiện ích mở rộng của mình đến thư viện chính thức. Tất cả các biểu tượng của bạn cần được liệt kê trong manifest.json. Đảm bảo các loại tệp và tên khớp với nhau.

Đặt các biểu tượng, background.html và manifest.json trong một thư mục cùng nhau, sau đó chuyển đến trang quản lý tiện ích mở rộng chrome://extensions, xem trong chế độ Nhà phát triển (Tôi nghĩ bạn cần chạy kênh beta hoặc cao hơn để hiển thị), nhấp vào Gói tiện ích mở rộng , bên cạnh thư mục gốc Tiện ích, nhấp vào Duyệt , tìm và chọn thư mục bạn đã tạo, nhấp OK và kéo tệp .crx kết quả vào cửa sổ Google Chrome của bạn.


Cảm ơn vì Charlatan này. Tôi đã nghe nói về API mới nhưng đang đợi cho đến khi tôi tìm thấy tiện ích mở rộng đáp ứng mong muốn của mình trước khi đăng nó ở đây làm câu trả lời cuối cùng. Tôi rất nghi ngờ tôi sẽ cố gắng làm cho riêng mình vì có nhiều người làm điều đó tốt hơn tôi nhiều. Có lẽ Tác giả của tiện ích mở rộng 'Tìm kiếm bối cảnh' sẽ viết lại để sử dụng API mới.
andygrunt

Không có gì. Thật sự rất dễ dàng để điều chỉnh các ví dụ trên cho các trang web khác. Tất cả bạn phải làm để làm cho nó hoạt động là thay đổi URL. Tất cả mọi thứ khác chỉ là làm cho nó đẹp. Tôi đã chỉnh sửa mã trong câu trả lời của mình để tìm kiếm Google Maps. Chỉ phải thay đổi năm điều.
gdejohn

Lưu ý rằng có một số thay đổi đối với tiện ích chrome, cụ thể manifest.jsonlà phiên bản hiện tại 2 và rất nhiều thứ này đã thay đổi.
Jason

Liên kết của bạn đến Dropbox bị hỏng. Sẵn sàng cập nhật?
Bob Hopez

@BobITHz Các tiện ích mở rộng đó không còn hoạt động với tất cả các thay đổi đối với Chrome trong chín năm qua.
gdejohn

5

Có một tiện ích mở rộng Tìm kiếm bối cảnh thực hiện những gì bạn muốn với một ngoại lệ là nó không thêm bất cứ thứ gì vào menu nhấp chuột phải; thay vào đó, sau khi bạn chọn một đoạn văn bản trên trang, nó sẽ hiển thị một nút nhỏ có hình tam giác màu xanh bên cạnh và nhấp vào nó sẽ bật lên menu. văn bản thay thế


Thông minh. Điều này làm 99% những gì tôi muốn. Như bạn nói, nó không thêm các tùy chọn vào menu chuột phải, nhưng quan trọng hơn, nó không hoạt động ở mọi nơi, ví dụ như viết một cái gì đó vào hộp tìm kiếm của Google, chọn nó và nút không xuất hiện. Tôi vẫn muốn nghe nếu có thể thêm các tùy chọn vào menu chuột phải nhưng điều này sẽ được thực hiện. Cảm ơn.
andygrunt

AFAIK không có cách nào để thêm tùy chọn vào menu gốc Chrome (như menu "Tùy chọn" ở góc trên bên phải) vì tiện ích mở rộng chỉ có thể điều chỉnh DOM và hiển thị cửa sổ bật lên. Có lẽ đó là một lựa chọn có chủ ý để đạt được khả năng tương thích đa nền tảng tốt hơn.
Whitequark

1
Đây là một lý do tôi gắn bó với Firefox.
CGA

@CGA: Firefox rất hay, và tôi đã sử dụng nó trong nhiều năm, nhưng nó quá chật chội trên netbook Atom 2x1600.
Whitequark

Không thể không đồng ý với bạn ở đó.
CGA

1

Tôi đã được thưởng thức một tiện ích mở rộng có tên Menu Nhấp chuột phải Tùy chỉnh Nó cho phép bạn tạo các mục menu nhấp chuột phải có thể định cấu hình đầy đủ và thậm chí hoạt động trong các trình duyệt khác (Opera: Cài đặt Tiện ích mở rộng Chrome , Firefox: Chrome Store Foxified ).

  • Cài đặt "Menu Nhấp chuột phải tùy chỉnh" từ Cửa hàng Chrome
  • Mở Tùy chọn cho Menu Nhấp chuột phải Tùy chỉnh
  • Trong phần Chỉnh sửa phần CRM, chọn Lựa chọn
  • Cuộn xuống Công cụ tìm kiếm thường được sử dụng và thêm một
  • Nó thêm công cụ tìm kiếm đó trong phần Chỉnh sửa phần CRM.
  • Nhấp vào nó, không phải trên thiết bị của nó, để chỉnh sửa nó.
  • Thay đổi tên thành "Tìm kiếm amazon.co.uk" hoặc bất cứ điều gì
  • Thay đổi mã thành

    var query;
    var url = "https://www.amazon.co.uk/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=%s";
    if (crmAPI.getSelection()) {
        query = crmAPI.getSelection();
    } else {
        query = window.prompt('Please enter a search query.');
    }
    if (query) {
        window.open(url.replace(/%s/g,query), '_blank');
    }
    
  • Tạo một mục menu khác của loại tập lệnh, gọi nó là "Google Map" hoặc bất cứ điều gì và mã hóa nó theo cùng một cách:

    var query;
    var url = "https://www.google.com/maps/search/%s";
    if (crmAPI.getSelection()) {
        query = crmAPI.getSelection();
    } else {
        query = window.prompt('Please enter a search query.');
    }
    if (query) {
        window.open(url.replace(/%s/g,query), '_blank');
    }
    

0

Có một phần mở rộng gọi là "Tìm kiếm menu ngữ cảnh". Nó cho phép bạn thêm URL vào nó và sau đó khi bạn chọn một văn bản và nhấp vào một trong các URL, nó sẽ chuyển văn bản đó đến URL mà bạn đã nhấp.

Ví dụ: URL tìm kiếm cho YouTube là:

http://www.youtube.com/results?search_query=TESTSEARCH

trong đó TESTSEARCH là văn bản bạn muốn tìm kiếm. Trong tiện ích mở rộng, bạn thêm dòng này và nó sẽ tự động thay thế TESTSEARCH bằng văn bản đã chọn khi bạn nhấn nó. Bạn có thể thêm nhãn cho mỗi URL.

Đây là liên kết đến phần mở rộng.

https://chrom.google.com.vn/webstore/detail/ocpcmghnefmdhljkoiapafejjohldoga


0

Xin chào vì câu hỏi chính đã được trả lời Tôi muốn đóng góp bằng một cái gì đó.

Đây là tập lệnh được sửa đổi đơn giản tương tự như tìm kiếm hình ảnh ngược với google nhưng chuyển hướng imglink.jpg đến Trình xem Exif của Jeffrey để phân tích EXIF ​​của hình ảnh.

Cảm ơn gdejohn .

Dễ dàng, tạo 2 tệp này tôi đã sử dụng notepad, thêm một số biểu tượng 16x16, 48x48 và 128x128 (hoặc xóa dòng) và chuyển đến chrome: // extend / tick chế độ nhà phát triển thêm thư mục chứa tệp.

Tên tệp: manifest.json

{
"manifest_version": 2,
    "background" : { "scripts": ["background.js"] },
    "description": "Agrega un menu contextual para ver el EXIF de imagenes. Jeffrey's Exif Viewer",
    "icons": {
            "16": "icon16.png",
            "48": "icon48.png",
            "128": "icon128.png"
        },
   "minimum_chrome_version": "6",
   "name": "Regex Exif Viewer Right Click",
   "permissions": [ "contextMenus", "tabs", "http://*/*",
 "https://*/*" ],
   "version": "1.0"
}

Tên tệp: background.js

/**
 * Returns a handler which will open a new tab when activated.
 */


function getClickHandler() {
  return function(info, tab) {

    // The srcUrl property is only available for image elements.

var url = "http://regex.info/exif.cgi?imgurl=" + info.srcUrl;

    // Create a new tabto the info page.

chrome.tabs.create({ url: url, });
  };
};



/**
 * Create a context menu which will only show up for images.
 */


chrome.contextMenus.create({
  "title" : "Get image info via Jeffrey's Exif Viewer",
  "type" : "normal",
  "contexts" : ["image"],
  "onclick" : getClickHandler()
});
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.