"Ну дык не надо писать глупости с умным видом, типа"
Я пишу глупости, потому что не разбираюсь в этом вопросе, потому и спрашиваю, в чем мои ошибки. "сделайте "alert" мне надо следующее =========================== image.onload = function() { alert(this.width+","+this.height); } image.src = file; -------------------------- значения картинки this.width и this.height определяются в alert, но не работают в конструкции типа if ((this.width>0)&(this.height>0)) { document.write(...); } ======================== как это победить задача такая, если картинка маленькая или отсутствует - ищем другую методом случайного перебора (random) |
Цитата:
image.src =file; <-- это что по вашему?и image.src =file; <-- я же вот здесь устанавливаюКак почувствуете, вам сразу на форумах отвечать охотнее будут. Цитата:
|
при чем здесь document.write
если не проходит if ((this.width>0)&(this.height>0)) { кто-нибудь полный код решения задачи в состоянии прописать? |
Сталкивался примерно с той же самой проблемой - писал функцию просмотра фоток, где нужно было уместить фотку произвольного размера в отведенное место. Простое принудительное указание width не проходило - т.к. фотки могли быть разных пропорций, а в случае маленьких изображений происходил бы принудительный апскейлинг, что не есть хорошо.
Т.е. нужно было посмотреть ее реальный размер, вычислить коээфициент уменьшения, и если он >1, то уменьшить размер картинки - вроде бы все просто. Однако несмотря на примитивность задачи, долбался я очень долго - в зависимости от ситуации width получался либо 1, либо соответсвовал предыдущей загруженной картинке, либо еще как (а порой и соотвествовал тому, что надо, но было это совершенно непредсказуемо). Проблема решилась очень просто. Все вычисления пришлось выполнять в функции, вызываемой по onload картинки. Только так удалось добиться того, что значения ее размеров в свойстве width соответсвуют реальности вне зависимости от браузера, скорости соединения итд. Уверен, что и вашем случае такое пройдет. Удачи! Валентин http://vgvozdev.narod.ru |
Цитата:
|
Все! Удалось решить задачу. Аж, двумя спослбами. Исходники и реализацию можно посмотреть на
http://kachay.ucoz.org/rend_foto_dosug2.htm http://kachay.ucoz.org/rend_foto_forum2.htm |
Часовой пояс GMT +3, время: 21:00. |