Показывать скрипт в зависимости от внутренней ширины - без "потенциально опасного request.form"
Что я хочу:
У меня есть ситуация, когда я хочу показывать партнерскую рекламу на моем сайте. Это в основном javascript, с содержанием внутри них. Поскольку мой сайт имеет адаптивный дизайн, я хочу загружать разные объявления в зависимости от свойства внутренней ширины jQuery. Итак, подведем итог: я хочу загружать разные javascript-коды в зависимости от свойства innerwidth.
Что я сделал:
Я загружаю два разных javascript-кода в hiddenfields и, в зависимости от внутренней ширины, показываю любой из них с помощью команды div.html(). Однако это приводит к ошибке "потенциально опасный request.form", когда пользователь отправляет сообщение (защита XSS от ASP.NET), поскольку загружаемый контент имеет опасные символы, что имеет смысл.
Я мог бы сказать "ValidateRequest=false" на всех страницах, но это ужасное решение, которое открыло бы много проблем с безопасностью.
Мои мысли...
Лучший способ - загрузить рекламу со стороны сервера, но мы не знаем ширину браузера. Из того, что я смог прочитать, кажется, что трудно / невозможно получить значение внутренней ширины в page_load.
Но я хотел бы загрузить свои объявления, не делая потенциально опасный запрос.
Есть идеи, как это решить?
1 ответ
Решение, которое я выбрал, состояло в том, чтобы установить HTML в невидимые div, DivA и DivB, в Page_Load.
Затем в JavaScript, в зависимости от свойства innerwidth (и от события resize), я мог бы установить div в видимый / невидимый.
Очень простое решение по сравнению с тем, что я пытался сделать. Да, он дает немного больше визуализированного HTML, но, по крайней мере, работает и работает быстро.