javascript

Определение браузера js

29.05.2014 javascript No comments ,

var nVer = navigator.appVersion;
var nAgt = navigator.userAgent;
var browserName  = navigator.appName;
var fullVersion  = ''+parseFloat(navigator.appVersion); 
var majorVersion = parseInt(navigator.appVersion,10);
var nameOffset,verOffset,ix;

// In Opera, the true version is after "Opera" or after "Version"
if ((verOffset=nAgt.indexOf("Opera"))!=-1) {
 browserName = "Opera";
 fullVersion = nAgt.substring(verOffset+6);
 if ((verOffset=nAgt.indexOf("Version"))!=-1) 
   fullVersion = nAgt.substring(verOffset+8);
}
// In MSIE, the true version is after "MSIE" in userAgent
else if ((verOffset=nAgt.indexOf("MSIE"))!=-1) {
 browserName = "Microsoft Internet Explorer";
 fullVersion = nAgt.substring(verOffset+5);
}
// In Chrome, the true version is after "Chrome" 
else if ((verOffset=nAgt.indexOf("Chrome"))!=-1) {
 browserName = "Chrome";
 fullVersion = nAgt.substring(verOffset+7);
}
// In Safari, the true version is after "Safari" or after "Version" 
else if ((verOffset=nAgt.indexOf("Safari"))!=-1) {
 browserName = "Safari";
 fullVersion = nAgt.substring(verOffset+7);
 if ((verOffset=nAgt.indexOf("Version"))!=-1) 
   fullVersion = nAgt.substring(verOffset+8);
}
// In Firefox, the true version is after "Firefox" 
else if ((verOffset=nAgt.indexOf("Firefox"))!=-1) {
 browserName = "Firefox";
 fullVersion = nAgt.substring(verOffset+8);
}
// In most other browsers, "name/version" is at the end of userAgent 
else if ( (nameOffset=nAgt.lastIndexOf(' ')+1) < 
          (verOffset=nAgt.lastIndexOf('/')) ) 
{
 browserName = nAgt.substring(nameOffset,verOffset);
 fullVersion = nAgt.substring(verOffset+1);
 if (browserName.toLowerCase()==browserName.toUpperCase()) {
  browserName = navigator.appName;
 }
}
// trim the fullVersion string at semicolon/space if present
if ((ix=fullVersion.indexOf(";"))!=-1)
   fullVersion=fullVersion.substring(0,ix);
if ((ix=fullVersion.indexOf(" "))!=-1)
   fullVersion=fullVersion.substring(0,ix);

majorVersion = parseInt(''+fullVersion,10);
if (isNaN(majorVersion)) {
 fullVersion  = ''+parseFloat(navigator.appVersion); 
 majorVersion = parseInt(navigator.appVersion,10);
}

document.write(''
 +'Browser name  = '+browserName+'<br>'
 +'Full version  = '+fullVersion+'<br>'
 +'Major version = '+majorVersion+'<br>'
 +'navigator.appName = '+navigator.appName+'<br>'
 +'navigator.userAgent = '+navigator.userAgent+'<br>'
)

Определена ли функция в JavaScript

06.01.2014 javascript , ,

if (typeof test == 'function') {
    test();
}

убрать первый символ javascript

08.11.2013 javascript ,

var s = '/first string';
var news = s.substr(1);
alert(news);

уберет первый символ

JavaScript indexOf()

11.06.2013 javascript , ,

var str="Hello world, welcome to the universe.";
var n=str.indexOf("welcome");
if(n < 0){
alert('no');
}else{
alert('yes');
}

Валидация в inpute 2

21.05.2013 javascript ,

	jQuery('input[name="form_text_292"]').keyup(function(e){
        var This		= jQuery(this);
        var Val			= This.val();
		var do_check	= true;
		var key	        = e.keyCode;
		console.log(e.keyCode);
		
		if(Val == ''){
			do_check = false;
		}
		
		if(
			key == 8	|| 
			key == 39	|| 
			key == 46	|| 
			key == 37	
		){
			do_check = false;
		}
		console.log(do_check);
		if(do_check){		
			var ValCheck	= '';
			var shablon		= /[0-9\.\,]{1,50}/;
			var resultCheck = Val.match(shablon);
			if (resultCheck == Val && resultCheck!=null){
				ValCheck = Val;
			}else{
				var kolich		= Val.length;
				ValCheck		= Val.slice(0,kolich-1);
				var ValCheck	= Val.replace(/[a-zA-ZА-Яа-я\!\@\#\$\%\^\&\*\(\)\-\_\+\=\"\№\;\:\?]/g,"");
			}
			
			var shablon		= /[\.\,]/;
			var resultCheck = ValCheck.match(shablon);
			
			if(!resultCheck){
				ValCheck = ValCheck+',00';
			}
		
			This.val(ValCheck);  
		}   
	});

Валидация в inpute

26.02.2013 javascript

Ввод только русских символов, только латинских, только числа.
в этом параметре

data-check='["RUSSTR"]'

нужно указать «RUSSTR» или «ENSTR» или «NUMERIC»

<input type='text' id='S_NAME' name='DATA[S_NAME]' class='symbolic' value='<?=$postArData['S_NAME']?>' data-check='["RUSSTR"]' />
jQuery('.symbolic').keyup(function(){
		var This		= jQuery(this);
		var ThisData	= This.data('check');
		var Val			= This.val();
		for(b in ThisData){
			var a = ThisData[b];
			switch (a) {
				case 'RUSSTR':
					var ValCheck	= '';
					var shablon		= /[А-Яа-я -]{1,50}/;
					var resultCheck	= Val.match(shablon);
					if (resultCheck == Val && resultCheck!=null){
						ValCheck = Val;
					}else{
						var kolich = Val.length;
						ValCheck = Val.slice(0,kolich-1);
					var ValCheck = Val.replace(/[A-Za-z0-9]/g,"");
					}
					This.val(ValCheck);
				break
				case 'ENSTR':
					var ValCheck	= '';
					var shablon		= /[a-zA-z -]{1,50}/;
					var resultCheck	= Val.match(shablon);
					if (resultCheck == Val && resultCheck!=null){
						ValCheck = Val;
					}else{
						var kolich = Val.length;
						ValCheck = Val.slice(0,kolich-1);
						var ValCheck = Val.replace(/[А-Яа-я0-9]/g,"");
					}
					This.val(ValCheck);
				break
				case 'NUMERIC':
					var ValCheck	= '';
					var shablon		= /[0-9]{1,50}/;
					var resultCheck	= Val.match(shablon);
					if (resultCheck == Val && resultCheck!=null){
						ValCheck = Val;
					}else{
						var kolich = Val.length;
						ValCheck = Val.slice(0,kolich-1);
						var ValCheck = Val.replace(/[\D]/g,"");
					}
					This.val(ValCheck);
				break

				default:

			}
		}
	});

jQuery data

26.02.2013 javascript No comments

Array

<input type='text' id='S_NAME' name='DATA[S_NAME]' class='symbolic' value='<?=$postArData['S_NAME']?>' data-check='["test", "twoo", "thrie"]' />
var stuff = $("#S_NAME").data("check");
alert(stuff[2]);

Object

<input type='text' id='S_NAME' name='DATA[S_NAME]' class='symbolic' value='<?=$postArData['S_NAME']?>' data-check='{"name":"John"}' />
var stuff = $("#S_NAME").data("check");
console.log(stuff);

Делает любой компонент ajax

19.02.2013 Bitrix, javascript No comments , ,

<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");?>
<script type="text/javascript" src="/bitrix/js/main/ajax.js"></script>
<?$APPLICATION->IncludeComponent(
 "bitrix:form.result.new",
 "",
 Array(
  "AJAX_MODE" => "Y",  // режим AJAX
  "AJAX_OPTION_SHADOW" => "N", // затемнять область
  "AJAX_OPTION_JUMP" => "Y", // скроллить страницу до компонента
  "AJAX_OPTION_STYLE" => "Y", // подключать стили
  "AJAX_OPTION_HISTORY" => "N",
 ),
false
);?>
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");?>

Содержимое этого файла подключить через include или jQuery().load();

Ввод только русских символов

06.02.2013 javascript No comments , , ,



// Решени для javascript
function setValidator(id, regex) {
  var element = document.getElementById(id);
  if (element) {
    var lastValue = element.value;
    if (!regex.test(lastValue))
      lastValue = '';
    setInterval(function() {
      var value = element.value;
      if (value != lastValue) {
        if (regex.test(value))
          lastValue = value;
        else
          element.value = lastValue;
      }
    }, 10);
  }
}

// Решение для jQuery
$(document).ready(function(){
	$('.inputField').keyup(function(){
		var login			= $(this).val();
		var shablon			= /[А-Яа-я]{1,50}/;
		var resultCheck		= login.match(shablon);
		if (resultCheck==login && resultCheck!=null){
				//$('#info').text("");
			}
		else{
			var kolich= login.length;
			//$('#info').text("Разрешены  буквы");
			login = login.slice(0,kolich-1);
			$(this).val(login);
		}
	});
});/*end ready*/


<input type="text" id="test" class='inputField'/>
<input type="text" id="test2" class='inputField'/>
<input type="text" id="test3" class='inputField'/>
<input type="text" id="test4" class='inputField'/>
<script type="text/javascript">
	setValidator('test', /^[а-яА-я-]*$/);
</script>

Рандомное целое число javascript

02.02.2013 javascript No comments


var randomnumber=Math.floor(Math.random()*11)

console.log(randomnumber)