1. JavaScript / Говнокод #12030

    +160

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    jQuery('#items > div > a > img').hover(
        function(){
          jQuery(this).css('border', 'solid 1px gray');
          var pos = jQuery(this).parent().parent().position().left;
          var posTop = jQuery(this).parent().parent().position().top;
          jQuery(this).parent().parent().css('left', (pos-1));
          jQuery(this).parent().parent().css('top', (posTop-1));
        },
        function(){
          jQuery(this).css('border', '0');
          var pos = jQuery(this).parent().parent().position().left;
          var posTop = jQuery(this).parent().parent().position().top;
          jQuery(this).parent().parent().css('left', (pos+1));
          jQuery(this).parent().parent().css('top', (posTop+1));
        }
      )

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

    Запостил: nbspjr, 30 Октября 2012

    Комментарии (6) RSS

    • jQuery(jQuery(jQuery(this).parent()).parent()).css('left', pos + 1);
      ney?

      Приактически jQueryFoldLeft!
      Ответить
    • Разумеется, навесить событие на div не дано.
      Ответить
      • достаточно голого CSS
        Ответить
        • угу. например, прозрачный однопиксельный бордер и закрашивание его по ховеру. можно было бы и outline, но в этом случае возникли проблемы с оперой (outline плохо подружился с zindex)
          Ответить
        • А, ну да. Не вникал что именно делает обработчик.
          Тут действительно js не нужен.
          Ответить
    • cssQuery
      Ответить

    Добавить комментарий