Показать сообщение отдельно
  #6 (permalink)  
Старый 10.09.2017, 12:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Сообщение от Булат Азат улы
. А функция запускается после клика?
для первоначального варианта!!!
вы её сами запустили newSlide("#formNewAdd"), когда формировали клик
это
$("#newAdd").click(newSlide("#formNewAdd"));

равно
этому
$("#newAdd").click(undefined);


третий вариант сделать код с вашей функцией рабочим
<meta charset="utf-8">
<style>
#newAdd {
  color: #FF0000;
}

#newUpdDiv, #formNewDel {
  display: none;
}

.toggleP span {
  text-decoration: underline;
  padding: 0 5px;
}

.toggleP span:hover {
  cursor: pointer;
  text-decoration: none;
  color: #FF0000 !important;
}
</style>
<script src='https://code.jquery.com/jquery-3.2.1.min.js' type='text/javascript'></script>
<script type="text/javascript">
  $(document).ready(function(){
    function newSlide(id){
      $(".formNews").slideUp(500);
      $("#newsP span").css("color", "black");
      $(this).css("color", "#FF0000");
      $(id).slideDown(500);
    }
    $("#newAdd").click(newSlide.bind($("#newAdd")[0],"#formNewAdd"));
    $("#newUpdate").click(newSlide.bind($("#newUpdate")[0],"#newUpdDiv"));
    $("#newDelete").click(newSlide.bind($("#newDelete")[0],"#formNewDel"));
  });
</script>
<p id='newsP' class='toggleP'><span id='newAdd'>Добавить объявление</span> ┃ <span id='newUpdate'>Изменить объявление</span> ┃ <span id='newDelete'>Удалить объявление</span></p>
<form method='POST' id='formNewAdd' class='formNews'>
  <p>Блок 1</p>
</form>
<div id='newUpdDiv' class='formNews'>
  <p>Блок 2</p>
</div>
<form method='POST' id='formNewDel'  class='formNews'>
  <p>Блок 3</p>
</form>

и четвёртый
<meta charset="utf-8">
<style>
#newAdd {
  color: #FF0000;
}

#newUpdDiv, #formNewDel {
  display: none;
}

.toggleP span {
  text-decoration: underline;
  padding: 0 5px;
}

.toggleP span:hover {
  cursor: pointer;
  text-decoration: none;
  color: #FF0000 !important;
}
</style>
<script src='https://code.jquery.com/jquery-3.2.1.min.js' type='text/javascript'></script>
<script type="text/javascript">
  $(document).ready(function(){
    function newSlide(id){
      $(".formNews").slideUp(500);
      $("#newsP span").css("color", "black");
      $(this).css("color", "#FF0000");
      $(id).slideDown(500);
    }
    $("#newAdd").click($.proxy(newSlide, $("#newAdd")[0], "#formNewAdd"));
    $("#newUpdate").click($.proxy(newSlide, $("#newUpdate")[0], "#newUpdDiv"));
    $("#newDelete").click($.proxy(newSlide, $("#newDelete")[0], "#formNewDel"));
  });
</script>
<p id='newsP' class='toggleP'><span id='newAdd'>Добавить объявление</span> ┃ <span id='newUpdate'>Изменить объявление</span> ┃ <span id='newDelete'>Удалить объявление</span></p>
<form method='POST' id='formNewAdd' class='formNews'>
  <p>Блок 1</p>
</form>
<div id='newUpdDiv' class='formNews'>
  <p>Блок 2</p>
</div>
<form method='POST' id='formNewDel'  class='formNews'>
  <p>Блок 3</p>
</form>
Ответить с цитированием