LINUX.ORG.RU

Хранение информации в атрубутах


0

1

1) Можно ли так хранить информацию внутри элементов:
$(«#пример_id»).attr('level','0');

Если нельзя, то создавать сложные id/class,
чтобы потом строчными операциями резать на части?

2) Делаю многоуровневый раскрывающийся список с содержимым из базы,
обновление через AJAX. Можно ли отступ слева оформить несколькими
img через CSS, то есть указал class=«level2» и слева несколько img.
Понятно что можно указать margin-left в классе, но некрасиво.


1. Можно. В jquery есть ещё $(...).data(), там тоже удобно можно хранить данные, только в селекторах не заюзаешь.

Bers ()

>Можно ли так хранить информацию внутри элементов

HTML 5 для этого выделял пространство атрибутов, начинающихся с «data-». Если не передумали. Но судя по тому, что ты хочешь сделать, тебя и классы должны устроить.

Понятно что можно указать margin-left в классе, но некрасиво.


WHAT?

Deleted ()

> Можно ли так хранить информацию внутри элементов: $(«#пример_id»).attr('level','0');

Можно, но канонично это делается именно как

создавать сложные id/class,

чтобы потом строчными операциями резать на части

Вообще, хранить информацию в DOM-нодах - моветон, доступ к глобальным переменным/объектам осуществляется гораздо дешевле (но если говорить об отрисовке дерева, то правильно как раз делать это классами)

Понятно что можно указать margin-left в классе, но некрасиво.

А засрать DOM бесполезными img - конечно же, очень красиво.. Где еще хранить однотипные стили, как не в классе?

Bad_Habit ()
Ответ на: комментарий от Deleted

Атрибуту можно дать любое наименование и Firefox просто
игнорирует неизвестный атрибут. Правильно так делать?

margin-left создает отступ слева, а нужно:
img1 текст
img2 img1 текст
...
img2 img2 img2 img2 img1 текст


WinLin2 ()
Ответ на: комментарий от WinLin2

>Атрибуту можно дать любое наименование

Но это «не по уставу». Т.е. лучше таки взять с приставкой.

margin-left создает отступ слева, а нужно


CSS это таки не жабаскрипт. По крайней мере мне пока в голову ничего путного как это сделать не пришло (особенно если уровень вложенности неограничен, т.к. описывать каждый придётся отдельно). Нужны IMG — вставляй их.

Deleted ()
Ответ на: комментарий от Deleted

уровень вложенности неограничен, т.к. описывать каждый придётся отдельно

<div class="tree">
	<div class="label">label 1</div>
	<div class="sub">
		<div class="tree">
			<div class="label">label 2</div>
			<div class="sub">
			...
			</div>
		</div>
	</div>
</div>
div.sub
{
	padding-left: 10px;
}
Bad_Habit ()
Ответ на: комментарий от Deleted

это уже зависит от того что хранить. в плане вопроса тс конечно не очень, а так то почему бы и нет, если че посложнее

trashymichael ★★★ ()

>атрубутах

Вот не пойму, что мешает перед нажатием кнопки отправить текст хоть немного вычитать?

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.