Автор Тема: getAttribute  (Прочитано 5665 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн 0b0rm0t

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 99
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
getAttribute
« : 16 Сентября 2005, 18:07:19 »
Кто-нибудь может объяснить такое поведение функции getAttribute?

Суть: я через таблицу стилей назначаю трем объектам (таблица, картинка, ячейка таблицы) свойство "width". Во всех трех случаях это происходит успешно, размер равен указанному. Затем пытаюсь получить значение этого атрибута через getAttribute("width"). Работает только с . У остальных - возвращает "".








   
.
   
.



Если голова болит, значит она есть.

Оффлайн AlexVN

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 21
  • +0/-0
  • 0
    • Просмотр профиля
    • https://alexatnet.com
getAttribute
« Ответ #1 : 17 Сентября 2005, 01:21:37 »
getAttribute возвращает аттрибут тега, а не стиля.
Надо использовать cell.style.width, что бы получить значение стиля.
https://t.me/avnetkachov - телеграм канал, https://alexatnet.com - сайт

Оффлайн 0b0rm0t

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 99
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
getAttribute
« Ответ #2 : 17 Сентября 2005, 12:40:38 »
Ок, пусть будет так. Тогда понятно, почему не работает.

Но проблема в том, что конструкция object.style.getAttribute() видит только то, что определено как , все что лежит отдельно в таблице стилей будет невидимым.

Пример:





   





Вопрос: как получить атрибуты из таблицы стилей?
Если голова болит, значит она есть.

Оффлайн AlexVN

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 21
  • +0/-0
  • 0
    • Просмотр профиля
    • https://alexatnet.com
getAttribute
« Ответ #3 : 18 Сентября 2005, 02:04:31 »
В общем так: на сколько я понимаю, есть DOM. И я не уверен, что node.style является элементом Node. Честно говоря, удивлен, что у него getAttribute вообще работает.
Firefox, например, на image.style.getAttribute говорит
Error: image.style.getAttribute is not a function
Source File: file:///c:/temp/1.html
Line: 12

Попробуй такой код:








https://t.me/avnetkachov - телеграм канал, https://alexatnet.com - сайт

Оффлайн 0b0rm0t

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 99
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
getAttribute
« Ответ #4 : 18 Сентября 2005, 21:55:34 »
Спасибо за информацию, но толку - ноль. Твой пример height не видит. IE 6.0.2800
Если голова болит, значит она есть.

Оффлайн AlexVN

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 21
  • +0/-0
  • 0
    • Просмотр профиля
    • https://alexatnet.com
getAttribute
« Ответ #5 : 19 Сентября 2005, 01:26:24 »
https://t.me/avnetkachov - телеграм канал, https://alexatnet.com - сайт

Оффлайн DartSidius

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 309
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
getAttribute
« Ответ #6 : 25 Апреля 2007, 03:42:23 »
По поводу стилей не уверен что аттрибут с ними работает..он работает именно с аттрибутами тега...т.е. например name, value etc

правильно вот так:

document.getElementById(\'table\').setAttribute(\'width\', 100); - устанавливаем атрибут

var width = document.getElementById(\'table\').getAttribute(\'width\'); - считываем атрибут

Оффлайн DartSidius

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 309
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
getAttribute
« Ответ #7 : 25 Апреля 2007, 03:45:39 »
По поводу получение аттрибутов таблицы стилей...всё элементарно:

var width = document.getElementById(\'table\').style.width;

и по аналогии для height

var height = document.getElementById(\'table\').style.height;

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28