Метка

jquery

Всего: 96 записей

javascript — проверка типа выбранного файла

Определение расширения файла:

$('input[type=file]').live('change',function(){
	var ext=$(this).val().split('.').pop();
	alert(ext);
});

Проверка на допустимость типа файла для загрузки:

$('input[type=file]').live('change',function(){
	var ext=$(this).val().split('.').pop();
	var allow=new Array('7z','bin','bz','bz2','doc','docx','gif','gz','htm','html','ico','jpeg','jpg','mov','mp3','mpeg','mpg','pdf','php','png','ppt','pptx','rar','rtf','swf','tar','txt','wav','xls','xlsx','zip');
	if($.inArray(ext,allow)===-1){
		$(this).val('');
		alert('Недопустимый тип файла');
	}
});

jquery each атрибут элемента содержит подстроку

Например имеем код:

<ul id="service_filter">
	<li class="active"><a href="#" data-service="0">Все</a></li>
	<li><a href="#" data-service="1">Услуга 1</a></li>
	<li><a href="#" data-service="2">Услуга 2</a></li>
	<li><a href="#" data-service="3">Услуга 3</a></li>
</ul>
<div class="article_item" data-services="'1'">Описание 1</div>
<div class="article_item" data-services="'1','2','3'">Описание 2</div>
<div class="article_item" data-services="'3'">Описание 3</div>
$(document).ready(function(){
	$('ul#service_filter li a').on('click',function(){
		var service=$(this).data('service');
		$(this).closest('ul').find('li').removeClass('active');
		$(this).parent().addClass('active');
		if(service=='0'){
			$('.article_item').fadeIn();
		}
		else{
			$('.article_item').fadeOut();
			$('.article_item').each(function(i,el){
				var id="'"+service+"'";
				if($(el).data('services').search(id)!=-1){
					$(el).fadeIn();
				}
			});
 
		}
		return false;
	});
});

В таком случае второй div.article_item будет показан при клике по любой ссылке, а 1 и 3 только по 1 и 3 соответственно.

jquery toggle html

$.fn.toggleText=function(t1,t2){
	if(this.text()==t1)this.text(t2);
	else this.text(t1);
	return this;
};

Пример использования:

$(document).ready(function(){
	$(".shch").click(function(){
		$(this).toggleText('+','-');
		$(this).closest('li').children('ul').slideToggle();
		return false;
	});
});