При копировании материалов, ссылка на источник ОБЯЗАТЕЛЬНА!!!

четверг, 1 ноября 2012 г.

Размещаем кнопку сайта с кодом в раскрывающемся блоке. html + jQuery

В предыдущем посте я описывал процесс создания анимированной кнопки для сайта с помощью программы Photoshop, но сделать кнопку – это только полдела. Ведь мы ее создавали не для того чтобы ею любоваться, а дать возможность пользователю установить ее себе на сайт. В данном же посте я покажу, как предоставить пользователю код вашей кнопки для вставки у себя на сайте. При этом сам код будет спрятан, а при клике по ссылке «показать код кнопки» он плавно откроется.

Для таких целей нам необходима библиотека jQuery. В последнее время я ею только и пользуюсь, потому как, в отличие от обычного JavaScript, облегчается доступ к html-элементам и различные приемы и эффекты выглядят более красиво. Так что первым делом подключим ее между тегами <head> нашего сайта:
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js'></script>
Идея такая, мы показываем саму кнопку и под ней ссылку «показать код кнопки», при клике на которой отобразится сам код для вставки на сайт. Наш html-код будет таким:
<img src="АДРЕСС_ИЗОБРАЖЕНИЯ" width="88" height="33" border="0" alt="ОПИСАНИЕ_САЙТА" />
<br />
<div>
    <a class="showButtonCode">показать код кнопки</a>
    <br />
    <div class="buttonCode">
     <textarea name="mybutton" cols="23" rows="7" readonly="readonly"><a href="АДРЕСС_САЙТА" target="_blank"><img src="АДРЕСС_ИЗОБРАЖЕНИЯ" width="88" height="33" border="0" alt="ОПИСАНИЕ_САЙТА" /></a></textarea>
    </div>
</div>
В данном коде подставляем свои значения в АДРЕСС_ИЗОБРАЖЕНИЯ, АДРЕСС_САЙТА и ОПИСАНИЕ_САЙТА (названия говорят сами за себя). Для блока и ссылки пропишем простые стили, можете добавить разных свойств, я же просто указал основное, что надо.
.buttonCode {
 display:none; 
  }
.showButtonCode {
 cursor: pointer; 
  }
Теперь, чтобы наша конструкция заработала, нужен такой код JavaScript. Можете сохранить его в какой-нибудь файл *.js и подключите (как подключали библиотеку jQuery), или же просто пропишите его между тегов <head> (типа такого <script type="text/javascript">КОД</script>):
$(document).ready(function(){
   
 $('.showButtonCode').click(function(){
  $block_div = $(this).parent().children('div.buttonCode').css("display");
  if ($block_div == "block") {
   $(this).text("показать код кнопки");      
  }
  else
  {
   $(this).text("скрыть код кнопки");
  }
  $(this).parent().children('div.buttonCode').toggle('normal');
  $(this).blur();
  return false;
 }); 
    
});
Принцип простой, при клике по ссылке с классом showButtonCode, проверяем, раскрыт ли блок с классом buttonCode: если раскрыт, тогда меняем текст ссылки на «показать код кнопки» и скрываем блок с кодом, в противном случае – устанавливаем текст ссылки, как «скрыть код кнопки» и раскрываем блок.

Ну вот и все, как работает данный код можете посмотреть у меня на блоге внизу левой колонки. Если есть желание, можете добавить мою кнопку к себе на сайт, буду благодарен. :)

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

Отправить комментарий