Я использую этот простой код Javascript для получения текста, который был выбран на веб-странице:
var userselection = window.getSelection(); //user selection will be a Selection-Object
var rangeObject = userselection.getRangeAt(0);
Код работает нормально, если выделен текст. Если я просто нажму на текст, который можно выделить, я получу объект диапазона, как и ожидалось.
Но если я не выбираю и не нажимаю, Firefox выдает эту ошибку:
uncaught exception: [Exception... "Component returned failure code: 0x80070057
(NS_ERROR_ILLEGAL_VALUE) [nsISelection.getRangeAt]" nsresult: "0x80070057
(NS_ERROR_ILLEGAL_VALUE)" location: "JS frame :: file:///home/jan/Webprojekte/test-range
selection.html# :: who :: line 16" data: no]
Есть ли чистый способ предотвратить ошибку, но при этом уведомить пользователя, что текст не был выбран?