Другой подход к скрытию изображения в Javascript

#javascript #jquery #css #html

#javascript #jquery — запрос #css — файл #HTML #jquery #css

Вопрос:

Я отвечаю за разработку подхода / алгоритма для скрытия изображения на триггере. Но скрытие должно быть таким, чтобы разработчикам было сложно выполнить «проверку кода» и изменить определенные переменные javascript или установить какое-либо условие true. Так что visibility:hidden точно нет, потому что от него легко избавиться с помощью «проверки кода».

Единственный жизнеспособный вариант, о котором я могу думать, — это внедрение image code () через jQuery, что позволило бы кому-то запустить его вручную (я полагаю). Но не уверен, достаточно ли это хорошо.

Какой подход я могу реализовать? Важно каждое мнение. Спасибо.

Для уточнения: есть 2 изображения. каждое наведение курсора мыши на кнопку вызывает видимость одного из изображений. И цель состоит в том, чтобы запретить пользователю просматривать их оба одновременно. И они могут избежать этого, изменив условия и переменные скрипта. Как предотвратить это?

Ответ №1:

Вы могли бы использовать что-то вроде приведенного ниже, чтобы определить, когда кто-то использует элемент проверки, чтобы полностью скрыть содержимое, которое они пытаются изменить.

 var currentHtmlContent;
var element = new Image();
var elementWithHiddenContent = document.querySelector("#element-to-hide");
var innerHtml = elementWithHiddenContent.innerHTML;
element.__defineGetter__("id", function() {
    currentHtmlContent= "";
});
setInterval(function() {
   currentHtmlContent= innerHtml;
   console.log(element);
   console.clear(); 
   elementWithHiddenContent.innerHTML = currentHtmlContent;
}, 1000);
  

Затем он покажет содержимое, когда они прекратят проверку.

Комментарии:

1. попробует и уведомит. Но идея довольно хорошая и простая. Спасибо.

2. Нет проблем, дайте нам знать, как у вас дела

3. Извините, но в моем случае это не сработало. Не уверен, что мне не удалось определить средство получения.

4. Я создал для вас скрипку, на которую вы можете взглянуть: jsfiddle.net/zs5a7b92 кажется, работает нормально.

5. Оценил усилия, чистый код. К сожалению, не работает для Firefox. В любом случае, я решил использовать библиотеку github под названием «devtools-detect». Это довольно аккуратно! Несмотря на все это, спасибо, что указали путь. Я нашел эту библиотеку благодаря вашему ответу. И я считаю, что это считается правильным ответом.