логин: 
<< предыдущая заметкаследующая заметка >>
10 апреля 2010
модуль FOTO

Вот ведь гадство! Сделал такой чудесный модуль, разворачивающий на экран фотки при клике. А он в Firefox работает, а в Opera — уже нет :( Похоже, там <img onload='func()'...> не отрабатывает... :( А как мне иначе узнать размер будущей фотки, чтобы спозиционировать ее на экране?

MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101451.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101453.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101454.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101455.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101457.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101458.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101459.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101462.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101466.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101467.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101468.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101469.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101477.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101483.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101485.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101486.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101487.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101489.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_010420101490.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101491.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101497.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101499.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101500.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101504.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101505.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101506.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101508.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101509.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101510.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101511.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101515.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101516.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101518.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101520.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_020420101523.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101527.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101534.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101535.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101536.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101537.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101538.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101541.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101545.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101546.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101547.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101549.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101550.jpg MODULE NOT FOUND: FOTO0: /dnevnik/2010/04/Roscon_030420101551.jpg
<< предыдущая заметка следующая заметка >>
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок
Оставить комментарий
Linux Opera
0
0
Andrey Pozdnyakov
Opera 10.10, Linux.
Вроде, работает...
Linux Safari Chrome
0
0
Andrey Pozdnyakov
хотя..
смотря что понимать под "работает". Фотка большая открывается, но иногда в непредсказуемом месте.
Фотки, как и всплывающие окна открываются под указателем мыши. Где будет курсор, там будет верхняя часть фотки.
Windows Opera
0
0
Wot (#83640)
highslide
Nokia-E90 Safari
 Москва
0
0
LLeo Nokia (#3043)
не, это ужас и тормозилище - в пихву, к jquerи
Windows Opera
0
0
Wot (#83640)
Ню-ню
Сделайте также хорошо и надежно, тогда и сравнивайте.
Windows Safari Chrome
0
0
Если внимательно приглядеться, можно увидеть, что Леонид ненавидит js-библиотеки, весящие больше 10Кб. Эта ненависть иррациональна, потому критика бесполезна.
Windows Opera
0
0
Wot (#83640)
Ну JsHttpRequest.js таки сильно больше 10к :)
Linux Firefox
 Москва
0
0
17 кб. Это единственный внешний скрипт, который я использую. Планирую, кстати, выкинуть из него таблицы перекодировок - они в данном случае не нужны, тогда он сократится.
Windows Opera
0
0
Wot (#83640)
Это конечно не важно, но размер файла 24595 байт
Windows Safari Chrome
0
0
Я про вес после сжатия gzip'ом. Впрочем, хостер Леонида всё равно не желает сжимать выдачу, также как и движок Леонида.
Linux Firefox
 Москва
0
0
А кто сказал, что там хорошо? И кто сказал, что там надежно?

Произведения highslide у меня на экране отрисовываются мучительно секунды по две, мигая и щерясь. Один раз это увидеть интересно, но реально фотки листать в этом чудовище - совершенно некомфортно.

Кроме того, оно не работает у меня на мобильнике. Удивительно - моя всплывалка из трех строчек прекрасно работает, а ваш хваленый highslide - не работает.

Вы конечно можете мне рассказать сказки, что я должен сменить Линукс, на Виндоус, докупить себе кучу памяти, поменять процессор и монитор, а мобильник разбить об стену и не смотреть с него фотки никогда, и тогда highslide будет работать прекрасно.

Но продукт должн быть удобен для пользователя, а не пользователь удобен для разработчика. Кто считает иначе - тех следует расстреливать или отправлять в MS на работу.
Windows Opera
0
0
Wot (#83640)
Нет, не надо придумывать за меня.
Из линукса надо вылить спрайт, что бы в нем работал JS нормально.
А для мобильника размер thumbnail-ов уже приличный. Так что тупо переносить поведение на в 4 раза меньший viewport - это как раз про удобство разработчика.
Linux Firefox
 Москва
0
0
Я не понимаю смысл ваших слов.

JS у меня работает прекрасно, как видите. И мобильник мой - не мобильник, а маленький ноутбук с полной клавиатурой, экраном 800x500 и полноценным браузером Safari, который показывает все НОРМАЛЬНЫЕ сайты не хуже, чем любой другой браузер.

Но конечно если какой-нибудь веб-недопесок желает подвесить на сайт 2-мегабайтный JS-пакет в стиле "шобы фсё мигало и блестело как у бохатых" - то ошибки в нем пропорциональны размеру кода, а дополнительно встроенная "поддержка" каждого нового вида браузера (такие разработчики предпочитают окучивать браузеры по одному) автоматически делает их код неработоспособным на трех других браузерах. Это не мой путь - это путь "вебмастеров лирушечки".
Windows Safari Chrome
0
0
Леонид, что характерно, создатели jQuery утверждают, что он корректно работает на нормальных телефонных браузерах. И суть его использования - не в мигании (которое просто легко реализуется, но совершенно не обязательно), а именно в отсутствии проблем совместимости кода, в том числе с Вашим мобильником.
Linux Firefox
 Москва
0
0
мы сейчас про highslide
Windows Safari Chrome
0
0
Однако, Вы приводите общие аргументы для всех библиотек. Кроме того, simpleform для jQuery весьма удобен для указанных целей, и при этом невесом.
Windows Safari Chrome
0
0
тьфу, перечитал, понял что написал... =( Имелось ввиду simplemodal:
http://www.ericmmartin.com/projects/simplemodal/
Windows Opera
0
0
Wot (#83640)
В сафари что в 3м что в 4-м highslide работает прекрасно.

Хотите получить небольшой скрипт - берется уже работающий скрипт и убирается в нем ненужные в данный момент компоненты. Переписывать - это наступать на грабли, пройденные автором скрипта, и иметь больше ошибок.

Про мегабайтные скрипты и "лирушечки" - это какая-то лирика ?
Linux Firefox
 Москва
0
0
Мне не интересно вести эту дискуссию. Ваш подход - пользователя ("мне бы скачать и применить"), мой подход - разработчика ("мне бы создать"). Вот и вся разница.
Windows Safari Chrome
0
0
Леонид, чуть проще. Ваш подход, что результат должен быть удобен в первую очередь Вам. В том числе, работать на Вашем мобильнике.
Linux Firefox
 Москва
0
0
Нет. Просто я исповедую принцип бритвы Оккама.
Windows Opera
0
0
Wot (#83640)
чистый подход "мне бы создать" применим только для демиургов. Для разработчиков всегда есть компромисс - использовать PHP или Python, например, или написать свой язык. Использовать j_Query или трахаться с чистым JS или даже написать свой движок или браузер. Не использовать чужие наработки не получиться. Вопрос лишь в том в каком месте пишем и насколько оно новое и полезное.

Искать как именно определять параметры загружаемого изображения кросс-браузерно интересно чисто академически, так же как и определять размеры viewport, вписывать одно в другое и так далее по списку подзадач по теме. Мне лично казалось что поиграться в такие велосипеды достаточно один раз и где-то там в школе ...
Linux Firefox
 Москва
0
0
Вы до сих пор в школе, если пониманию физики предпочитаете чужую шпоргалку.
Windows Firefox
0
0
Monstradamus (sing1eton)
Тут еще вот какая штука: все фотки оказываются под swf-объектом, если он есть на странице. В итоге ролик с Михаилом Черняховским не дает посмотреть шесть фото. Вроде для SilkWay обсуждалось тут, как swf подложить под изображения...
Linux Firefox
 Москва
0
0
Я не знаю решения.
Windows Safari Chrome
0
0
Леонид, попробуйте добавить в свойтво flash объекта следующее:
<param name="wmode" value="opaque">

После придётся решать ряд проблем, но это уже после...
Linux Firefox
 Москва
0
0
Интересно, а почему сам Youtube этого не делает?
Windows Safari Chrome
0
0
С wmode'ом вообще много проблем возникает, причём самых неожиданных (впрочем, почти всегда решаемых всяким шаманством типа добавления пустой картинки на фон или прописыванием лишних параметров). Потому лучше лишний раз не использовать. Однако Вам оно актуально, в отличие от youtube'а.
Linux Firefox
 Москва
0
0
А почему Ютуб это делает? Или это только у меня так получается?
Windows Safari Chrome
0
0
Youtube решает свои задачи - им неактуально наложение на flash своих слоёв. Вам - актуально.

Вообще, это общая проблема, что flash позиционируется поверх всех слоёв, и почти всех серьёзные веб-дизайнеры с ней сталкивались.
Linux Firefox
 Москва
0
0
Странно лишь, что в моем браузере оно работает корректно. Хотя в других местах я сталкивался с тем, что флэш все загораживает.
Windows Safari Chrome
0
0
Леонид, Вы же не хуже остальных понимаете, что браузеры разрабатывают несвязанные между собой люди, и полной совместимости между ними быть не может, да и цели такой не ставится.

В данном случае, Вы не задаёте соответствующий параметр, и браузер принимает решение за Вас.
Windows Safari Chrome
0
0
Леонид, value="opacue" для флеша в Вашем случае корректно не работает. Попробуйте value="transparent".
Windows Safari Chrome
0
0
Леонид, было бы очень приятно наличие подписей у фотографий, например, как сделана надпись "комментарий" в окне написания коммента (или та же линия только сверху блока).
Обычно, туда запихивается текст из title, но это уже из разряда дополнительных удобств.
Linux Firefox
 Москва
0
0
Я подумаю, как это сделать.

Помнится, в инструментарии у Темы Лебедева на design.ru был какой-то пример компактно укладывающихся блоков "рисунок-описание", попробую поэкспериментировать с ним.

Также, полагаю, было бы очень полезно в скрипте сделать так, что если у фотки нет подписи совсем, то он бы вставлял ее url. Чтобы админ на странице (или читатель) мог выделить его мышкой как правку и предложить свою подпись. Так подписывать фотки - очень удобно.
А если с сервера размер картинки сразу в html/img/(width,height) записывать через php/getimagesize ? Тормоза?
Windows Safari Chrome
0
0
Как Вы себе это представляете, так, чтобы это было удобно? Если, разумеется, не вписывать размеры в название файла.

Или Вы предлагаете при каждой загрузке страницы через php опрашивать три десятка картинок на предмет их размера? Скажите честно, Вы хоть раз пытались это реализовывать на хоть сколько-то посещаемых проектах?
Удобно что и кому? Размеры вписывать, например, в параметры функции bigfoto.

Я предлагаю при каждой загрузке страницы записывать в нее размеры всех фотографий на ней. Откуда при этом брать размеры - есть несколько вариантов. Я не пытался, но встречал на посещаемых проектах картинки с автоматически проставленным width-height, т.е. это вполне реализуемо.
Linux Firefox
 Москва
0
0
Проблема только в Опере 9, насколько я понимаю.

Все необходимые функции в коде у меня вроде давно есть (вау! как мы смогли обойтись без jQuеry?), в том числе с учетом Оперы:

function getScrollH(){ return (document.documentElement.scrollTop || document.body.scrollTop); }

function getScrollW(){ return (document.documentElement.scrollLeft || document.body.scrollLeft); }

function getWinW(){ return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientWidth:document.body.clientWidth; }

function getWinH(){ return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientHeight:document.body.clientHeight; }

Но почему-то я при позиционировании применяю не их (или не совсем их):

var e=idd(id); var d=document.body;
var W=d.clientWidth; var H=d.clientHeight;
var w=e.clientWidth; var h=e.clientHeight;

x=(W-w)/2;
y=getScrollH()+(getWinH()-h)/2;

Когда у меня будет свободный вечерок - поэкспериментирую и выясню, как лучше это делать. Наверно надо как-то научить getWinH() измерять с учетом Оперы на только document, но и любой элемент.

В общем, я уверен, все это решается просто, и записывать размеры картинок не понадобится.
В операх (для Win32) позиционируется отлично (в середину экрана, а не документа, как было вчера). Проверил в 9.25, 10.10 и 10.51 . Из девятых имеется еще 9.51, 9.52, 9.64. Если интересно, могу глянуть в них.
Linux Firefox
 Москва
0
0
У меня на мобильнике зато перестало работать ;) А раньше работало ;)
В десктопной (win32) Safari 3.2.1 работает. Чудеса, однако.
Windows Safari Chrome
0
0
Леонид, сколько Вы можете издеваться насчёт jQuеry? Он не даёт возможности реализовать то, что нельзя реализовать на js. Он просто даёт возможность не плясать с бубном вокруг багов, а заниматься исключительно разработкой. Серьёзно, попробуйте, тут же подобные проблемы пропадут... ;)
Linux Firefox
 Москва
0
0
Вы знаете, я думаю, вам будет проще заглянуть в код движка (он вообще-то открыт), найти в конце файла index.php все JS-процедуры (7 килобайт) и подумать своей головой, что из них сможет заменить jQuerи (например, helps и majax он явно не заменит), в чем окажется преимущество и за счет чего будет выигрыш. После этого беседа станет аргументированной. А пока - напоминает религиозный спор "нет бога кроме jQuеry"
Windows Safari Chrome
0
0
Работа с ajax встроена в jQuеry ($.ajax и прочие). Про helps - я не до конца понял, что это. Всплывающие окна, удобное позиционирование и передвижение в jQuеry делается в одну строчку.
Linux Firefox
 Москва
0
0
Аякс я почти не использую, у меня majax - управляемый код с сервера. А всплывающее окно у меня одно, и другого не надо.

А вы сможете ответить на вопрос, зачем вообще нужен движок с Jquerи, когда есть готовый Вордпресс - дневниковый движок? И зачем устанавливать Вордпресс, когда можно зарегистрировать свой дневник на Вордпресс.орг или в ЖЖ? И заодно расскажите, зачем вообще вести свой дневник, когда их и так уже миллионы написаны всяких - на любой вкус.

Написал всего одну строчку (в адресе браузера) - получи чей-то уже готовый дневник. Экономия времени потрясающая!
Windows Safari Chrome
0
0
>у меня majax - управляемый код с сервера.

Я с majax вообще не знаком, однако с jQuеry никогда не приходилось долго реализовывать подобный клиент-серверный обмен.

>А вы сможете ответить на вопрос, зачем вообще нужен движок с Jquerи, когда есть готовый Вордпресс - дневниковый движок

Всё просто - производительность Wordpress'а без использования злого полного кеширования на диск на длительное время типа WP SuperCache ужасающе низкая. Свой движок под свои нужды можно сделать очень легковесным, а php позволяет довольно легко добавлять чужой код в случае надобности (в Вашем случае - код из прошлого движка).

Кроме того, PHP - серверный движок, и практически не имеет проблем с несовместимостью, потому здесь можно заниматься разработкой, а не судорожным поиском пути между багами.

Ну и самое главное, Вы подменяете удобные для разработчиков библиотеки, которые в разы сокращают время разработки и его характер, на готовое решение.
Linux Firefox
 Москва
0
0
Ну вот вы и ответили на свой вопрос.
helps - это jQuеry, обработанный обсфукатором и встроенный во все модули дневника, потому-то Леонид упорно отказывается добавлять в дневник вторую копию этого замечательного во всех отношениях продукта.
Windows Safari Chrome
0
0
Видимо, мы по-разному воспринимаем слово "загрузка страницы". При каждой загрузке пользователем опрашивать все картинки на предмет их размера - верный путь увеличения нагрузки в несколько раз. А при добавлении/редактировании заметки, да, бывают фильтры, добавляющие размеры, но это редкость.
Видимо, Вы увидели в моем посте только один путь миграции размеров картинки в html. Самый неэффективный.

На сколько я понимаю, вопрос с размерами здесь уже (практически) неактуален.

PS. Оказывается, google каким-то волшебством прописывает размеры картинок.
Windows Safari Chrome
0
0
Я просто в посте не увидел конкретики. А гугл, я почти уверен, просто хранит базу картинок с ключевыми словами и размерами. Как, собственно, и делают некоторые тяжеловесные движки - хранят картинки с размерами, тумбнейлами и alt текстом для удобства добавления. Как Вы думаете, такое уместно в случае движка Леонида?
Linux Firefox
 Москва
0
0
Я думаю, не уместно. Все это технически проще делать "на месте" скриптом.

Поначалу я ведь пытался учитывать фотки в MySQL базе, хранить там подписи, названия, еще какие-то параметры... А потом пришел к выводу, что это неуместное усложнение кода и неоправданный жор серверных ресурсов. Бритва Оккама, короче, сработала.

Скоро доделаю фотоальбом по-человечески, который будет сам шариться по папкам с джпегами - то-то заживем!
Windows Opera
0
0
Не знаю, что там и как. Но onload у меня в Opera 10.51 работает.

http://www.dinkypage.com/60045
Windows Safari Chrome
0
0
Шаннар де Кассал
Немного почти офтопа: а можно ли сделать как-то, чтобы и в развёрнутом виде комментарий показывался? И брался из самого jpg, ну или files.bbs/descript.ion как вариант?
Linux Firefox
 Москва
0
0
простите, не понял. как это и о чем?
Windows Firefox
0
0
У файлов JPG есть поле комментария, которое отображается в просмотрщиках картинок (и в них же правится). Реально ли, чтобы модуль FOTO брал описания из данного поля? Ежели нет — то для комментариев ещё иногда используются отдельные файлы (files.bbs или descript.ion) — смысл в том, что при копировании «подписанных» файлов копируются и комментарии к ним.
Linux Firefox
 Москва
0
0
А, вот вы о чем. Это сложно и непонятно:

1. Вообще-то основное предназначения модуля в блоге - публикация свежесделанных фоток. По принципу "Пришел домой - залил в блог". Какая текстовая информация может содержаться в таких JPG? Ну уж наверно не "Вера, Маша, Антон и Павлик с гитарой у Костика на новоселье".

2. Фотки закачиваются (особенно, когда будет готов модуль) онлайн. Закачивать descript.ion?

3. У меня нет модуля, который бы выдергивал эту информацию из JPG. Создавать его - тяжелый и ничем не оправданный труд.
Safari
0
0
Vadim Oxyd Priluzkiy (oxyd)
Arora 0.10.2 OS/2 - полёт нормальный. Чем дальше смотрю на движок, тем больше он мне нравится. Если-б кто ещё встроил поддержку вики....
Nokia-E90 Safari
 Москва
0
0
Leonid Kaganov
А вики - это что имеется в виду?

всего комментариев: 79

<< предыдущая заметка следующая заметка >>