click link and avoid invalid links

jh-changes
Shin'ya Ueoka 7 years ago
parent a88890809c
commit 7c943eb675
  1. 12
      src/content/index.js

@ -9,15 +9,25 @@ import messages from '../messages';
consoleFrames.initialize(window.document); consoleFrames.initialize(window.document);
const startFollows = (newTab) => { const startFollows = (newTab) => {
let follow = new Follow(window.document, newTab); let follow = new Follow(window.document);
follow.onActivated((element) => { follow.onActivated((element) => {
switch (element.tagName.toLowerCase()) { switch (element.tagName.toLowerCase()) {
case 'a': case 'a':
if (newTab) {
// getAttribute() to avoid to resolve absolute path
let href = element.getibute('href');
// eslint-disable-next-line no-script-url
if (!href || href === '#' || href.startsWith('javascript:')) {
return;
}
return browser.runtime.sendMessage({ return browser.runtime.sendMessage({
type: messages.OPEN_URL, type: messages.OPEN_URL,
url: element.href, url: element.href,
newTab newTab
}); });
}
return element.click();
case 'input': case 'input':
switch (element.type) { switch (element.type) {
case 'file': case 'file':