JavaScript image.onload срабатывает не всегда
Из-за кеша событие image.onload срабатывает не всегда. Поэтому после обычной практики назначения обработчика события загрузки, нередко добавляют еще проверку на загруженность фото.
function loadImage( fimage ) {
var loaded = false;
function loadHandler() {
if (loaded) {
return;
}
loaded = true;
/* ваш код */
}
var img = new Image();
img.onload = loadHandler;
img.src = fimage;
if ( img.complete || img.clientHeight>0 ) {
loadHandler();
}
}
loadImage('http://xdsoft.net/images/1.png');
Как на JavaScript красиво вывести денежные значения
Number.prototype.format = function(){
return this.toFixed(0).format();
}
String.prototype.format = function( separator ){
return this.replace(/./g, function(c, i, a) {
return i && c !== "." && !((a.length - i) % 3) ?(separator||',') + c : c;
});
}
используется очень просто
var a = 100000000; alert(a.format())
Получить положение курсора в input
function doGetCaretPosition (ctrl) {
var CaretPos = 0;
// IE Support
if (document.selection) {
ctrl.focus ();
var Sel = document.selection.createRange ();
Sel.moveStart ('character', -ctrl.value.length);
CaretPos = Sel.text.length;
}
// Firefox support
else if (ctrl.selectionStart || ctrl.selectionStart == '0')
CaretPos = ctrl.selectionStart;
return (CaretPos);
}
Установить положение курсора в input
function setCaretPosition(ctrl, pos){
if(ctrl.setSelectionRange){
ctrl.focus();
ctrl.setSelectionRange(pos,pos);
}else if (ctrl.createTextRange) {
var range = ctrl.createTextRange();
range.collapse(true);
range.moveEnd('character', pos);
range.moveStart('character', pos);
range.select();
}
}

