Требуется прямая ссылка на внутреннюю страницу Chrome, на странице расширения Chrome - PullRequest
11 голосов
/ 19 января 2012

Я только что провел последние 7 часов подряд, пытаясь найти способ ссылки непосредственно на внутреннюю страницу Chrome.А пока я сдался.Я просто дал указание «щелкнуть правой кнопкой мыши и открыть в новой вкладке».

Я перепробовал все, от html до css и javascript, но ничего не работает.Ничего не происходит, когда я нажимаю на ссылку, даже если щелкнуть правой кнопкой мыши ссылку и открыть ее в новой вкладке, это прекрасно работает.

Неудачные попытки JavaScript:

<div class="links">
  <a href="chrome://net-internals/" onclick="window.open('chrome://net-internals/');">TESTAA</a>
</div>

и

<div class="links">
  <a href="chrome://net-internals/" onclick="window.location('chrome://net-internals/');">TESTAA</a>
</div>

Нет страницы с ошибкой.Просто ничего не происходит при нажатии.Если вы заставите его открыться в новой вкладке с помощью target="_blank", откроется только пустая вкладка.

ОБНОВЛЕНИЕ!Решено!

----- ШАГ 1 -----

Поместите следующий код на страницу background.html (background.html вызывается вmanifest.json):

function openNetInternals() { 
  chrome.tabs.create({url: 'chrome://net-internals/'});
}

----- ШАГ 2 -----

Введите этот код для ссылки (на html-странице):

<a href="chrome://net-internals/" onclick="chrome.extension.getBackgroundPage().openNetInternals()">Net</a>

----- ШАГ 3 -----

Обязательно обновите расширение.Это будет работать сейчас.

Ответы [ 3 ]

2 голосов
/ 19 января 2012

Доступна ли эта ссылка с вашего внутреннего номера или с вашего веб-сайта? Если из расширения, попробуйте использовать модуль chrome.tabs :

chrome.tabs.create({url: 'chrome://net-internals/'});

На фоновой странице создайте функцию, подобную этой:

function openNetInternals() {
   chrome.tabs.create({url: 'chrome://net-internals/'});
}

И вызывайте его со своей пользовательской стартовой страницы, когда ссылка нажимается так:

chrome.extension.getBackgroundPage().openNetInternals();

Соответствующие документы здесь .

1 голос
/ 19 января 2012

Попробуйте так:

<a href="#" onclick="chrome.tabs.create({url: 'chrome://net-internals'});">Net</a>
0 голосов
/ 27 ноября 2015

для открытия chrome: // ссылка в новой вкладке

chrome.tabs.create({url: 'chrome://net-internals/'});

для открытия в той же вкладке

chrome.tabs.query({ currentWindow: true, active: true }, function (tabs) {
    var tab_id = tabs[0]['id'];
    chrome.tabs.update(tab_id, {'url':'chrome://net-internals/'});
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...