Сабж лежит здесь. В корне архива лежит ну очень гибкий скрипт автоподгрузки, с огромным количеством отладочного кода (вызовов this.debug(msg,severity), которые можно спокойно удалить) и комментариев (их кстати тоже можно удалить ). И три подкаталога:
1main. Тестирование упомянутого скрипта (в странице прошито два запроса, на которых я игрался, обрабатывая случаи одновременного запроса).
2tree-bad. Реализация дерева, опирается на CSS в точности как в приведенном anonymous здесь
примере кода (за что ему еще раз спасибо). В этой реализации картинки слева показываются как background-image элементов span.
3tree. Реализация дерева, где span заменен на img, потому что FireFox не применяет CSS к подгружаемым через innerHTML span. (Попутно вспомнил ранее просмотренный HTML-код списка форумов и невольно подумал — это еще одно подтверждение того, что авторы движка RSDN уже прошли через всю эту дребедень.) В итоге третий пример несколько путаный... но у меня уже голова не варит, чтобы причесать все это дело, удалив избыточность кода и приведя к нормальному автомату состояний.
Все протестировано (худо-бедно ручками) на IE5.5/98, IE6/XP, Mozilla1.6, Firefox0.10.1, Opera7.23. Комментарии, предложения, bug reports?
. Сейчас буду пробовать под оперой делать фреймы видимыми, размером в 1px.
P.S. Риторический вопрос: ну и кто после этого будет спорить с тем, что Опера — г? Кому нужны такие усовершенствования, если от них сплошь и рядом — один геморрой.
. Сейчас буду пробовать под оперой делать фреймы видимыми, размером в 1px.
ДГ>P.S. Риторический вопрос: ну и кто после этого будет спорить с тем, что Опера — г? Кому нужны такие усовершенствования, если от них сплошь и рядом — один геморрой.
а если использовать XMLHTTPRequest?... вроде уже все современные браузеры поддерживают... и даже Opera...
Re[3]: Кому нужен работающий пример дерева с подгрузкой по з
Здравствуйте, anonymous, Вы писали:
A>а если использовать XMLHTTPRequest?... вроде уже все современные браузеры поддерживают... и даже Opera...
Я пару месяцев назад смотрел поверхностно в online-хелпах насчет запуска XSLT на клиенте. IE и Mozilla делают это по-разному, про Opera вообще ничего не нашел (Opera7 не понимает даже <?xml-stylesheet>). Мне подумалось — а забью-ка я до лучших времен. Конечно, отсутствие XSLT не исключает наличия XMLHTTPRequest, но в данном случае однопиксельный iframe проще и "кроссбраузерней".
Здравствуйте, Дм.Григорьев, Вы писали:
A>>а если использовать XMLHTTPRequest?... вроде уже все современные браузеры поддерживают... и даже Opera... ДГ>Я пару месяцев назад смотрел поверхностно в online-хелпах насчет запуска XSLT на клиенте. IE и Mozilla делают это по-разному, про Opera вообще ничего не нашел (Opera7 не понимает даже <?xml-stylesheet>). Мне подумалось — а забью-ка я до лучших времен. Конечно, отсутствие XSLT не исключает наличия XMLHTTPRequest, но в данном случае однопиксельный iframe проще и "кроссбраузерней".
вообще то за ним будущее, вроде бы Gmail его использует...
XMLHttpRequest is a native JavaScript object allowing further HTTP requests to be made from a page which has already loaded. It allows “micro requests” to be made in response to user events in a web page, rather than requiring a complete page reload, making it possible to implement some notion of a rich client user interface, similar to desktop applications.
The API provided allows a fairly fine grained level of control over HTTP requests, allowing any request header to be set and exposes all response headers.
The original implementation came from Microsoft as an ActiveX object for IE. Mozilla followed suit and implemented XMLHttpRequest with an (almost) identical API. Konqueror (and Safari, based also on KHTML) also has an XMLHttpRequest implementation and support should be coming in Opera from v7.6x+.
Здравствуйте, Дм.Григорьев, Вы писали:
ДГ>Найден подводный камень: Opera не грузит содержимое скрытых iframe (у которых display:none). Похожее обсуждалось в ветке Re: Убрать счетчики!!!
Понимает, понимает. Правда, стилевые таблицы Опера поддерживает только в формате CSS. Вот пример применения CSS-таблицы для отображения XML-файла: 'http://operarulit.narod.ru/'.
Re[5]: Кому нужен работающий пример дерева с подгрузкой по з
Здравствуйте, Ужасть бухгалтера, Вы писали:
ДГ>Opera7 не понимает даже <?xml-stylesheet> УБ>Понимает, понимает. Правда, стилевые таблицы Опера поддерживает только в формате CSS.
Я про Фому, ты про Ерему. Я ж русским языком написал — клиентский XSLT.
Кстати, в IE при загрузке XML-файла с ассоциированным XSL, генерирующим HTML на клиенте, есть интересный глюк (глюков там много, но запомнился только этот — интересный ): слетают базы у относительных ссылок. Подробностей не помню, и среди моих "экспериментов" не сохранилось, но если значение атрибута href у элементов <a> — относительный путь, он будет браться кажется не от текущего пути, а от корня домена.