href = "javascript: void (0)" ссылка на bbcode, но она должна быть доступной - PullRequest
0 голосов
/ 05 октября 2018

Моя проблема:

Люди копируют мои ссылки и размещают на своих сайтах без моего разрешения.Мои ссылки не генерируются HTML, но BBcode.

Ниже приведен пример моей структуры ссылок bbcode:

[url=https://example.com/#valuex=xxxx&valuey=yyyy class="hideurl"]Apply[/url]

если возможно, я бы хотел:

Скрыть всю ссылку, чтобы никто не мог скопировать ссылку

или

Скрыть только #valuex=xxxx&valuey=yyyy часть

Для рассмотрения:

У меня есть тысячи ссылок на моей странице, как указано выше.

Каждая ссылка имеет различное значение в xxxx и yyyy

Ссылки BBcode очень ограничены, я не могу добавить к этому больше вещей, решение должно быть только с использованием класса

Я должен сохранять свои ссылки работающими, это только скрывает информацию.

Мои планы до сих пор:

Чтобы скрыть ссылку в строке состояния, я буду использовать:

document.querySelector('.hideurl').href="javascript:void(0)";

Для защиты адресабар на целевой странице, который я буду использовать:

history.replaceState(null, null, "/");

Чего у меня еще нет:

Мне нужна функция onclick, чтобысохранить все мои переменные Линks работает.

Что-нибудь еще, о чем я не знаю

Примечание:

Если у вас есть лучший способ решить мою проблему, пожалуйста, поделитесьэто, я не эксперт, просто простой смертный, пытающийся решить проблему.

Вывод:

Мне нужно получить те же результаты в bbcode, что иесли бы я использовал это в html:

<a href="javascript:void(0)" onclick="location.href='http://example.com'">Link</a>

Заранее спасибо за вашу помощь

1 Ответ

0 голосов
/ 06 октября 2018

Хорошо, Готово!

var URLX = document.querySelector('.hideurl').href
document.querySelector('.hideurl').href="javascript:void(0)";
document.querySelector('.hideurl').onclick = function() {myFunction()};

function myFunction() {
window.open( URLX, '_blank');
}

и на странице назначения просто вставьте это:

history.replaceState(null, null, "/");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...