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();
    }
}

 

Рассказать друзьям

Добавить комментарий


Защитный код
Обновить