Предотвращение появления DIV с помощью Javascript .removeClass

Я хочу, чтобы мой бэк-офис (редактирование: страница, на которой я изменял свой сайт) открывался во всплывающем окне (Редактировать: особый тип всплывающей рекламы, созданный с использованием динамического HTML, JavaScript и аналогичных технологий веб-браузера. Потому что они не прокручиваются вместе с веб-страницей, они кажутся «парящими» над страницей, обычно закрывая содержимое.) но когда я щелкаю до того, как страница полностью загружена, она открывается на странице _blank. Это проблема.

Основываясь на старых потоках Stackoverflow (отредактируйте: например, Как включить / отключить кнопку html на основе сценария?), я пришел к идее скрыть ссылку на бэк-офис и показать ее, когда документ будет готов, используя Javascript .removeClass в конце моего всплывающего скрипта (он называется Clearbox, если нужно знать). Теоретически это должно предотвратить появление ссылки на бэк-офис до того, как скрипт всплывающего окна будет готов для правильной загрузки. Я, наверное, ошибаюсь, потому что панель инструментов вообще не отображается.

$(window).load(function(){ $("div#outils").removeClass('d-none'); });
// At the end of clearbox.js

В чем моя ошибка? class = "d-none" - это стандарт Bootstrap 4, который инициализирует div как не отображаемый и смешивается с другими классами, которые мне нужны в div # outils. Я открыт для любых предложений, если вы знаете способ получше.

Я вообще не могу следить за тобой. Что ты пытаешься сделать? Вы говорите о множестве разных вещей, как будто ожидаете, что мы узнаем, что это такое. Что такое «всплывающее окно»? Что такое Clearbox? Какая панель инструментов? Это не JavaScript, это jQuery, так что ваш вопрос по jQuery? Какой у вас «бэк-офис»?

Jared Smith 17.12.2018 14:06

Вы подтвердили, что мероприятие запущено? как $ (window) .load (function () {console.info ("Привет");});

Eponyme Web 17.12.2018 14:11

Извините, но мой вопрос кажется довольно ясным. Поскольку всплывающее окно - это веб-стандарт, я не ожидал, что мне придется его объяснять ... (Википедия: особый тип всплывающих окон, созданный с использованием динамического HTML, JavaScript и аналогичных технологий веб-браузера. Потому что они не прокручиваются вместе с веб-страницей, они кажутся «парящими» над страницей, обычно закрывая содержимое). По сути, у меня есть панель инструментов, при нажатии на которую открывается мой бэк-офис во всплывающем окне. Упоминание Clearbox делается только в том случае, если вам нужно знать, какой скрипт я использую. В противном случае вы можете проигнорировать эту информацию.

Greg 17.12.2018 14:13

@EponymeWeb: ваша строка возвращает Uncaught TypeError: $ (...). Load - это не функция, я должен признать, что я не очень хорошо разбираюсь в Javascript

Greg 17.12.2018 14:16

Ваш вопрос совсем не ясен - если вы прочитаете этот вопрос без какой-либо идеи или предыстории, вы не поймете этого - какое отношение имеет удаление класса display none к загрузке ссылки в пустом окне? Также дайте ссылку на старые темы, чтобы мы могли понять, о чем вы говорите. И наконец, создайте минимальный воспроизводимый пример

Pete 17.12.2018 14:21

@Pete В том-то и дело, он не должен открываться на пустой странице. Возможно, я забыл фразу, чтобы прояснить это: «На основе старых веток Stackoverflow я пришел к идее СКРЫТЬ ПАНЕЛЬ ИНСТРУМЕНТОВ И ПОКАЗАТЬ ЕЕ, КОГДА ДОКУМЕНТ ГОТОВ, используя Javascript. Сообщение отредактировано.

Greg 17.12.2018 14:30

В том-то и дело, что, исходя из вашего кода, он должен работать - поэтому невозможно ответить на ваш вопрос: Вопросы, требующие помощи по отладке («почему этот код не работает?») Должны включать в себя желаемое поведение, конкретную проблему или ошибку и кратчайший код, необходимый для их воспроизведения в самом вопросе. Вопросы без четкой постановки проблемы не будут полезны другим читателям.

Pete 17.12.2018 14:33

Хорошо, сделали ускорение, и кажется, что $(window).load не работает в jquery 3 - вам нужно используйте $(window).on('load' вместо Посмотрите, как легко это было отлаживать на рабочем примере

Pete 17.12.2018 14:39

@Pete Это работает как чам :) Спасибо и извините, если мой пост был недостаточно ясен. Я изо всех сил стараюсь соблюдать правила, но это не всегда легко понять

Greg 17.12.2018 14:52

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

Pete 17.12.2018 14:54

Я учусь каждый день :) Как я могу отметить ваш ответ как выбранное мной решение?

Greg 17.12.2018 15:10
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
11
62
1

Ответы 1

Используйте функцию jQuery $(document).ready(). Добавьте событие щелчка на панель инструментов после загрузки страницы.

$(document).ready(function(){
$(selector).click();
})

Это могло бы помочь, но могу ли я вместо этого заменить действие Click действием Display? Боюсь, моя импульсивная команда просто сочтет это ошибкой, если не сможет щелкнуть :-D

Greg 17.12.2018 14:23

Да, вы можете добавить все, что хотите, в «готовую» -функцию.

André 17.12.2018 14:25

Кажется, он работает, но панель инструментов элемента по-прежнему появляется слишком быстро. Я использовал его таким образом на главной странице: <script> $ (document) .ready (function () {$ ('div # outils'). RemoveClass ('d-none');}); </script>

Greg 17.12.2018 14:46

Если вы установите панель инструментов, например, с помощью css, на «display: none;» а в вашей готовой функции через jQuery $ (selector) .show () он появляется после загрузки.

André 17.12.2018 14:49

Другие вопросы по теме