2017-02-08 1 views
1

Так что я использую облако 9, чтобы сделать сайт. Прямо сейчас я застрял в показе и скрытии своей формы. У меня есть фиксированная боковая панель с кнопкой «Контакты». Нажатие этой кнопки должно переключать мою оболочку div #, которая содержит мою форму в виде всплывающего окна в середине экрана, на котором вы находитесь на сайте. Форма контакта связана с скриптом php, который в настоящее время не работает, но это еще одна история.Показать форму в div на кнопке button с JQuery

Я пробовал несколько решений, и теперь я просто потерян.

https://jsfiddle.net/b6uwb4n3/

кусок кода

$("#contactBtn").click(function() { 
$("#page-wrapper").hide("slow", function() { 
}); 
}); 

https://fjord-explorers-raademar.c9users.io/

ссылка на мой сайт

очень много работы в процессе.

+0

Добавили jquery на свой сайт? ваша скрипка работает, если вы добавите jquery https://jsfiddle.net/b6uwb4n3/3/ –

+0

У меня есть. Но я не уверен, работает ли он на c9 с типом сервера im runnin, получил apache going atm –

ответ

0

Глядя на связанном сайте, вы, кажется, есть ваша кнопка контакта нажмите событие приложенным до готовой функции документа. Я хотел бы предложить переместить код

$("#contactBtn").click(function() { 
    $("#page-wrapper").hide("slow", function() { 
    }); 
}); 

, чтобы внутри $(function(){}) вызова.

+0

Если посмотреть на сайт больше в инструментах разработчика, это действительно проблема. Форма правильно снабжена приемником событий, но кнопка контакта не работает. – Andrew

+1

О, я чувствую себя таким глупым ... Конечно, это сработало как шарм. Спасибо! –

+0

Вы очень желанны! Если вы не знаете, почему это важно, или для будущих людей, которые читают этот вопрос, причина в том, что эта функция готова (либо $ (document) .ready, либо $ (function() {})) называется _after_, DOM полностью загружен. В этом случае код попытался подключить прослушиватель событий до загрузки кнопки в DOM, поэтому ему негде было прикрепить слушателя. Всегда манипулируйте DOM внутри готовой функции! – Andrew

0

Вы можете использовать функцию jQuery toggleClass() и создать класс, который показывает div, и установить div в display: block. См скрипки: https://jsfiddle.net/b6uwb4n3/1/

0

Вы можете просто использовать функцию .toggle():

$("#contactBtn").click(function() { 
    $("#page-wrapper").toggle("slow"); 
}); 
0

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

Смежные вопросы