Апр 29
remitmasterjQuery checkbox, checked, jquery
Иногда элементарным вещам не уделяешь должного места в своей голове и они плохо запоминаются, вот и с этой выборкой так, постоянно забываю o_O
$("input[name='group_name[]']:checked");
||
$("input").filter(":checkbox:checked");
||
$('input[type="checkbox"]').prop('checked');
||
$("input[type='checkbox'][checked='true']");
||
$("input:checked");
Взято
Мар 22
remitmasterJavaScript svg
$('svg')[0].setAttribute('width', '100%');
Мар 06
remitmasterJavaScript, Без рубрики Highcharts, javascript графики

Из всего что было попробовано остановился на этой библиотеке и не прогадал. Эту библиотеку не даром даже яндекс использует в web мастере. Разобраться можно довольно быстро, есть масса примеров, api тоже не плохо описано. В общем записываю чтобы не забыть.
Ну и результаты работы с Highcharts
Аналитика стоимости 1м² жилья в Ставрополе
Ссылка на сайт проекта
Окт 01
remitmasterJavaScript, PHP JavaScript
Функция вставляет (в данном случае точку) после десятой, сотой, и тысячной доли числа.
var __formatSumm = function(sum)
{
var c = sum.length, s = sum, m = "", i = 0;
while(c--){if(i==3){m+='.'+s[c];i=0;}else{m += s[c];}i++;}
return m.split("").reverse().join("");
}
1.000
10.000
100.000
1.000.000
10.000.000
100.000.000
1.000.000.000
10.000.000.000
100.000.000.000
UP
Для php
function __formatSumm($s)
{
$c = strlen($s);
$ar = preg_split('//', $s, -1, PREG_SPLIT_NO_EMPTY);
$i = 0;
while($c--){if($i == 3){ $m .='.'.$ar[$c]; $i = 0;}else{ $m .= $ar[$c];}$i++;}
return strrev($m);
}
Сен 28
remitmasterJavaScript random
function randomString() {
return '' + new Date().getTime();
}
function randomString(length) {
var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz'.split('');
if (! length) {
length = Math.floor(Math.random() * chars.length);
}
var str = '';
for (var i = 0; i < length; i++) {
str += chars[Math.floor(Math.random() * chars.length)];
}
return str;
}
Сен 08
remitmasterJavaScript JavaScript, RegExp
/**
* @param {string} - Email
* @param {string} - (true/false) - определяет строгую
* проверку при которой пробелы до и после адреса считаются ошибкой
* @returns {Boolean} - (true/false)
*/
function isValidEmail (email, strict)
{
if ( !strict )
email = email.replace(/^\s+|\s+$/g, '');
return (/^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i).test(email);
}
найдено
Сен 08
remitmasterJavaScript, jQuery js
var ar_str = $('#INPUT').val().split("");
var r = /\d{1}/;
var nv = '';
for(var i = 0; i < ar_str.length; i++)
{
if(r.test(ar_str[i]))
nv += ar_str[i];
}
$('#INPUT').val(nv);
Авг 06
remitmasterAJAX, JavaScript js, navigation js
Итак задача, нужно сохранять состояние страницы после ajax запроса. Для этого приспособили метки у ссылок, URL будет вот такого вида http://site.ru/#/key:val/key1:val1/keyN:valN/
В js далеко не гуру, но все работает и нативно.
var Navigation = function()
{
this.isHash = function(){return (window.location.href.indexOf('#') !== -1 && window.location.hash.length > 1);};
/**
* Возвращает все параметры из url в виде объекта
*/
this.getQueryParams = function(){
if(this.isHash())
{
var _ar = window.location.hash.replace('#', '').split('/');
var _ob = {};
for(var i=0; i < _ar.length; i++){
if(_ar[i] !== "")
_ob[i] = _ar[i];
}
var returnObject = {};
for(var j in _ob){
if (_ob.hasOwnProperty(j)) {
var _ar_params = _ob[j].split(':');
returnObject[_ar_params[0]] = _ar_params[1];
}
}
return returnObject;
}
return false;
};
/**
* Устанавливает строку параметров, если есть сотрет что было
*/
this.setHash = function(objectParsms){
var ar = [], j = 0;
for(var i in objectParsms){
j++; ar[j] = i + ':' + objectParsms[i];
}
var hashString = ar.join('/');
if(hashString.length > 0)
window.location.hash = '#' + hashString + '/';
};
this._isEmptyObject = function(Obj)
{
var i = 0;
for(var o in Obj){
i++;
}
return i;
};
this._isKeyObject = function(obj, key){
for(var o in obj)
{
if(o === key)
return true;
}
return false;
};
/**
* Добавляет параметр в url, если параметр уже есть то заменит значение на новое
*/
this.addHashParam = function(objectParams){
if(this.isHash())
{
var params = this.getQueryParams();
for(var o in objectParams){
if(this._isKeyObject(params, o)){
params[o] = objectParams[o];
}
}
var arRes = [], k = 0;
for(var or in params){
k++;arRes[k] = or + ':' + params[or];
}
var str_hash = arRes.join('/');
var ar = [], j = 0;
for(var i in objectParams){
if(!this._isKeyObject(params, i)){
j++; ar[j] = i + ':' + objectParams[i];
}
}
if(ar.length > 0){
str_hash += ar.join('/') + '/';
}
else{
str_hash += '/';
}
window.location.hash = str_hash;
}
else
{
this.setHash(objectParams);
}
};
/**
* Удаляет параметр из url можно указывать несколько, принимает массив ключей
*/
this.delHashParams = function(arParams){
if(this.isHash())
{
var params = this.getQueryParams();
for(var a = 0; a <= arParams.length; a++){
delete params[arParams[a]];
}
if(this._isEmptyObject(params) > 0)
this.setHash(params);
else
window.location.hash = '';
};
};
};
Делать такую навигацию весьма трудоемко, но позволяет немного шире использовать ajax.
Older Entries
Свежие комментарии