Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как узнать есть ли у данного блока класс (https://javascript.ru/forum/misc/50288-kak-uznat-est-li-u-dannogo-bloka-klass.html)

Vladislav 19.09.2014 21:49

Как узнать есть ли у данного блока класс
 
Здравствуйте, мне нужно узнать есть ли у блока, по которому совершаю *клик*, класс (class='house'). И если есть, то убрать у него этот класс.

Я понимаю, что это нужно сделать с помощью if.
Помогите пожалуйста.

d.skuratovich 19.09.2014 22:06

Эмм, уточни: jQuery или Native JS (чистый)?

tsigel 19.09.2014 22:07

function hasClass(element, className) {
var classList = element.className.split(" ");
            return classList.some(function (name) {
                return name === className;
            });
}

Vladislav 19.09.2014 22:14

все-равно, думаю, jQuery будет даже лучше.

d.skuratovich 19.09.2014 22:20

Vladislav, я думаю, что как-то так

( function ( $ ) {
	$( document ).on( 'click', '.div', function() {
		if ( $( this ).hasClass( 'house' ) ) {
			$( this ).removeClass( 'house' );
		}
	} );
} ( jQuery ) );

Vladislav 19.09.2014 22:39

да, все работает. Спасибо!

d.skuratovich 19.09.2014 22:40

Vladislav, пожалуйста)

Vladislav 19.09.2014 22:43

не подскажешь где учился js, ибо я полный ноль. нужно с чего-то начать.

d.skuratovich 19.09.2014 23:01

Vladislav, а чего ему учится то ;)

Safort 19.09.2014 23:39

Да вы офигели такую ерунду на жиквери писать!)

document.addEventListener('click', function(e) {
  var el = e.target;
  if (el.classList.contains('house'))
    el.classList.remove('house');
});


Часовой пояс GMT +3, время: 14:39.