Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Скрипт отображения веса картинки, помогите подправить (https://javascript.ru/forum/misc/57088-skript-otobrazheniya-vesa-kartinki-pomogite-podpravit.html)

kostyanet 22.07.2015 12:49

Ладно, еще раз, жалко пацана, такой кайфовый у него взрыв в вымени юкоза...

var getImageData=function(url,callback){

	var img_data={w:0,h:0,b:0};

	var zapros = $.ajax({
		type: "HEAD",
		url:url,
		success: function () {

/* 

если жикверя дает тут какой-то this - это будет ее this 

*/

			img_data.b = zapros.getResponseHeader("Content-Length")/1024;
			var img = new Image();
			img.onload=function(){

/* 

а этот this ниже, к тому this выше - вообще не имеет отношения. Этот this дает загруженная картинка, поэтому тут this - она сама, поэтому можно с нее взять сразу, несмотря что в скопе есть img - оно же самое. Просто его может не быть в другой нотации

*/

				img_data.w=this.width;
				img_data.h=this.height;
				if(callback)
					callback(img_data);
				else
					window.img_data=img_data;
			};
			img.src = url;
		}
	});
};

/* usage */

getImageData('http://vinrarus.ucoz.net/DDD.png',function(d){
	alert(d.w+' '+d.h+' '+d.b);
});


Удалите каменты и втыкайте и все будет.

ЗЫ кто не понял - он поменял ВСЕ this'ы как по команде старшины.

ЗЫЫ Можно сказать эксперимент с отсутсвтием готового кода для Блинки Билла удался. Так что и впредь я им никогда не буду давать кодов, ибо тут либо как рони - дай все готовое и вылижи до блеска, или лучше не давать, ибо придется как рони.

kostyanet 22.07.2015 12:57

Да я сам неколебимо тупой в некоторых вопросах, например мне вообще не под силу написать самое просто регулярное выражение. Я ни одного сам не написал. Все что есть - найдено, переделано, вымучено. Но если мне надо заполучить регу, я буду ныть, упрашивать, умолять, просить и все такое, а не вонять что тут все у вас баранов неправильно.

devote 22.07.2015 13:12

Цитата:

Сообщение от kostyanet
например мне вообще не под силу написать самое просто регулярное выражение.

а чего не потратишь время на изучение? Ведь учить то в регулярках особо и нечего. Больше в них внимательность нужна, так как многие по невнимательности часто в них делают ошибки.

kostyanet 22.07.2015 13:14

У меня регулярная дислексия. Диагноз. Может у ТС жаба-скрипучая дислексия? :)

VINRARUS 22.07.2015 15:59

Цитата:

Сообщение от devote
соболезнования в чем?

Что вам приходится так мучаться с казалось бы простыми вещами, особенно встречая людей не понимающих этот дзэн.
Цитата:

Сообщение от devote
если говорите о многопоточности, тогда чем вам не угодил JS?

Так как для shell чужеродна многопоточность так и для JS по видимому чужеродно последовательное выполнение без костылей.
Цитата:

Сообщение от kostyanet
Батники пишет.

Батники это на дос-подобных ОС.
Цитата:

Сообщение от kostyanet
Короче говоря вы оказались крайне недовольны уровнем абстрактного мышления себя как программиста.

Ты таки сойди с рельс, постоял и хватит, больно ведь на них постоянно стоять. :)
Я вполне всем доволен, задачу я решил как хотел. Даже новые JS штуки узнал.

Мне не нужно постигать всех тонкостей JS так как ранее я постиг искусство использования костылей. :D
Цитата:

Сообщение от kostyanet
Ну конечно не будет работать, блинки билл, иди пиши свой шелл...

Движок вебсервера на Шэле уже написан, вот на JS заминка вышла, благо теперь и с ней закончил.
Цитата:

Сообщение от kostyanet
ну Блинки Ббилл зафигом в onload фотки-то this поменял на этот сраный req???

Ну Сквиидвард, нужно было уточнить что лишь первый this нужно менять, а не все, которые внутри той функции.
Цитата:

Сообщение от kostyanet
ЗЫЫ Можно сказать эксперимент с отсутсвтием готового кода для Блинки Билла удался. Так что и впредь я им никогда не буду давать кодов, ибо тут либо как рони - дай все готовое и вылижи до блеска, или лучше не давать, ибо придется как рони.

Все таки нужно было выложить полный скрипт в 48 кб ... ;)

devote 22.07.2015 16:18

Цитата:

Сообщение от VINRARUS
Что вам приходится так мучаться с казалось бы простыми вещами

не знаю как для вас, но для меня все просто. так что смотря кто еще мучается.

Цитата:

Сообщение от VINRARUS
для JS по видимому чужеродно последовательное выполнение без костылей.

ошибаетесь, последовательность в JS работает норм. Или вы думаете используя асинхронные методы вдруг должны превратится в последовательные просто потому что вам так удобно? Просто нужно понимать что является асинхронным а что нет, а после уже писать необходимый функционал. Если Вы не знаете таких вещей, то не нужно винить язык программирования лишь потому что не владеете знанием.

VINRARUS 24.07.2015 23:47

Цитата:

Сообщение от VINRARUS
На телефонном сервере jquery-1.10.1, а согласно єтой статье "jQuery XMLHttpRequest (jqXHR) появился в библиотеке jQuery в версии 1.5".

:lol: Ко мне только что дошло: 1.10.1 > 1.5
Цитата:

Сообщение от devote
не знаю как для вас, но для меня все просто. так что смотря кто еще мучается.

Да я как бы вообще на правах нуба могу сделать ололо. :)
Но более продвинутые же явно не все принцыпы понимают.
Цитата:

Сообщение от devote
Или вы думаете используя асинхронные методы вдруг должны превратится в последовательные просто потому что вам так удобно?

Да, именно так. Программист должен диктовать условия, а не инструмент. :write:

devote 25.07.2015 00:08

Цитата:

Сообщение от VINRARUS
Программист должен диктовать условия

Программист так же должен думать и о тех кто будет использовать его программное обеспечение... Если вы будете грузить файлы синхронно, этим самым у пользователя будет зависать браузер, вы считаете это нормально? Синхронное программирование в браузере это показатель неопытности программиста. Если я открою страницу которая мне будет вешать браузер, то такой сайт автоматом полетит в мой черный список и никогда более мною не откроется.

VINRARUS 25.07.2015 01:02

Цитата:

Сообщение от devote
Если вы будете грузить файлы синхронно, этим самым у пользователя будет зависать браузер, вы считаете это нормально?

Когда вместо нужной информации фига с маком висит - не на много лучше.
Цитата:

Сообщение от devote
Синхронное программирование в браузере это показатель неопытности программиста.

Именно по этому JS отправляет неопытных в глуубокий тыл? :-?
Цитата:

Сообщение от devote
Если я открою страницу которая мне будет вешать браузер, то такой сайт автоматом полетит в мой черный список и никогда более мною не откроется.

А если на странице находится ...мак? :)

devote 25.07.2015 01:25

Цитата:

Сообщение от VINRARUS
Когда вместо нужной информации фига с маком висит - не на много лучше.

очень даже на много, если браузер будет висеть, пользователь не сможет перезагрузить страницу или сделать переход, да и вообще ничего не сможет сделать со страницей пока браузер не отвиснет.

Цитата:

Сообщение от VINRARUS
Именно по этому JS отправляет неопытных в глуубокий тыл?

в любом деле нужно начинать с азов, а не лезть выше головы.

Цитата:

Сообщение от VINRARUS
А если на странице находится ...мак?

Это ничего не изменит.


Часовой пояс GMT +3, время: 17:48.