Ну, я немного исследовал, что вы хотите сделать, и вот что я нашел:
Вы можете определить, когда пользователь хочет уйти с этим кодом:
window.onbeforeunload = function() {
return "Are you sure you want to navigate away?";
}
и вы можете выбрать пользователя следующим образом:
var getSelected = function(){
var t = '';
if(window.getSelection){
t = window.getSelection();
}else if(document.getSelection){
t = document.getSelection();
}else if(document.selection){
t = document.selection.createRange().text;
}
return t;
}
Теперь, если мы объединим обе эти функции для совместной работы, мы можем сделать что-то вроде этого:
window.onbeforeunload = function() {
return getSelected();
}
Все этокод должен быть в вашем скрипте контента, я не уверен, почему вы хотите получить выбор, но если это для сохранения его в вашей БД или для дальнейшей обработки, вы можете отправить выбор пользователя на страницу background.html.не знаю, знакомы ли вы с ними, но вот ссылка, http://code.google.com/chrome/extensions/background_pages.html, для этого вы можете использовать api для передачи сообщений для расширений chrome:
http://code.google.com/chrome/extensions/messaging.html
Я работаю с этим уже 3 недели, и это довольно просто, просто убедитесь, что у вас есть четкое представление о том, как настроена архитектура вашего расширения, потому что это может сэкономить вам много времени.ng out потока данных.
Это приведет нас к коду нашего скрипта контента, подобному следующему:
window.onbeforeunload = function() {
chrome.extension.sendRequest({userSelection:getSelected()});
}
Вы просто должны прослушать на своей фоновой странице запрос какэто:
var receiveMessage= function() {
chrome.extension.onRequest.addListener(function (request, sender, sendResponse) {
//Do something
});
}