2013-11-11 3 views
-1

Каким будет лучший способ переключения ► треугольник влево на выпадающем меню (без использования изображений)?Переключить треугольник ► ▲ на выпадающем меню jQuery

<div class="box-heading"> 
    <a href="javascript:void(0);" id="switch-filters"> 
      <span>►</span> Možnosti filtrovania</a> 
</div> 

    $("#switch-filters").click(function() { 
    $(".filter_group[filtertype!='p']").toggle(); 
    }); 
+2

Да, мы можем сделать это за вас, и нет, у вас не будет плохой репутации на вашей учетной записи #newUser. –

ответ

1

Используйте трехкомпонентной выражение

$(".filter_group[filtertype!='p']").is(":visible") ? $(this).next("span").text("▲") : $(this).next("span").text("►") 
3

Вы можете использовать toggleClass и определить треугольник в CSS3 с псевдо теге :before

CSS

.box-heading > a:before{ 
    content: "▲"; 
} 

.box-heading > a.active:before{ 
    content: "►"; 
} 

JQuery

$(".box-heading > a").click(function(){ 
    $(this).toggleClass("active") 
}); 
+0

1+ Мне нравится это предложение. –

+1

Ха-ха, я просто делал скрипку для чего-то подобного. +1 :-D – Neal

0

Использование JQuery для замены HTML вашего диапазона

Что-то вроде:

$('span').text('▲'); 
3

вы можете использовать CSS .. поэтому, когда вы нажмете на тег, вы добавляете класс в теге a. Скажем, класс под названием щелкнул, а затем у него есть правило CSS, связанное с этим классом

a.clicked span { 
     transform: scale(1) rotate(90deg) translate3d(0,0,0); 
     /* transform for IE8 */ 
     -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.00000000, M12=-1.00000000, M21=1.00000000, M22=0.00000000,sizingMethod='auto expand')"; 
     zoom:1; 
} 

затем CSS будет вращаться Пролет 90 градусов делает левая стрелка стала стрелка вниз

совместимость браузера

http://caniuse.com/#search=transforms

также ссылаются на CSS Матрица вращения Калькулятор:

http://www.boogdesign.com/examples/transforms/matrix-calculator.html

:)

+1

это забавная идея :) вам нужно toggleClass сверху. И можно добавить некоторую анимацию (переход) - наверняка будет круто! – Horen

+0

Просто отметим, что это css-level-3 и не полностью поддерживается для решения «кросс-браузер». –

+1

@MilchePatern Это доходит до того, что вам нужно перестать беспокоиться о поддержке. Просто используйте CSS3 .. –

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