Залить ячейку таблицы нужным цветом
Каким образом можно залить ячейку таблицы нужным цветом из javascript кода? Я сейчас я использую такой вариант заливки:
...<TD><CENTER><span class="result" id="dy33"></span></CENTER></TD>... ... ... if (num2[xi1]==time1 && y==time2 && m==time3) { var bgc=document.getElementById(jim[xi]).style; bgc=document.getElementById(jim[xi]).style; bgc.backgroundColor="ff252a"; bgc.color="f9ff9d" } else {... Но при таком варианте идет заливка только вокруг значения, а мне необходимо залить всю ячейку таблицы, а еще лучше, с заданной шириной и высотой... Как это можно сделать? |
вместо span используйте div с width:100%; height:100%
|
Все, получилось, подсказали немного по другому, просто прописал id для TD:
...<TD id="dy33"><CENTER><span class="result" id="dy33"></span></CENTER></TD>... и задал в CCS стиль для таблиц |
Решений много - суть одна. Твои ID - некорректные. ID - это уникальный идентификатор. Это означает, что он должен быть один на всю страницу. Замени их классы.
|
Почему они некорректные? У меня их 56 под номерами, по каждому id заносится определенное значение в соответствующую ячейку таблицы.
|
В коде, который вы привели - 2 одинаковых ID. И вообще, создавать 56(!) id - это полное извращение. Удалите все свои скрипты и сожгите книги, по которым вы учились. Прочитайте матерьял, который есть на этом сайте. Затем начните писать всё заново с нуля. Потом будем разговаривать.
|
Да ладно. Я пишу календарь. И мой код в 1 фале, в отличие от календаря с точно такими же функциями (не сложная смена стиля, архив, даты праздников с оповещением) который занимает 5 файлов каждый из которых длинее одного моего. А на счет id одинакового, так именно благодаря этому выделяется настоящее число другим цветом и выделяется цветом соответствующая этому числу ячейка таблицы и никакого извращения тут нет. :no:
|
Цитата:
Цитата:
Если вы просите помощи на форуме, будте добры хотя бы прислушиватся к мнению других людей. Или вы считаете, что всё сами знаете?! |
Извращения нет говорите? Есть.
Если есть JS, то прощё всем числам присвоить 1 класс, а текущему - 2-й. |
Нет, я не считаю, что все знаю, да и вариант с одинаковым id в TD и span подсказал специалист в программировании. На высокий уровень программирования я не претендую. И код календаря писал по придуманному мной алгоритму, как смог... - работает всетаки, а что там внутри, посетителей абсолютно не будет интересовать...
|
Цитата:
|
Цитата:
|
Основной закон программирования: минимальный объем - максимальная функциональность!!! На коком бы языке небыла написана программа, она компилируется в одинаковый машинный код, поэтому плевать!!!, одинаковый id или разный, главное что задача решена и объем памяти занимаемый файлом гораздо меньше аналогичного (в отличие от 182 КВ оригинала, мой код занимает всего 30 КВ, и по функциональности мой более совершенный - функция архива уже готова к использованию, код не нужно дописывать: выбрав нужную дату, генерируется имя html файла который содержит, например, новости за выбранную дату, которые открываются в отдельном фрейме либо отдельной страницей...) (как написано: Навороченный календарь http://js.aceweb.ru/javascript/4/1/js.html ).
|
И по удобочитаемости ниже. Ну что сейчас какие-то 150Кб
|
Удобочитаемость??? Ха-ха, програмный продукт - это для пользователей, их не интересует код. А для програмиста, гораздо удобнее читать 1 фаил, чем 5 :) Тем более, что есть еще интернет со скоростью 5 КВ/сек.
|
Цитата:
Ну ты даёшь... Не все языки являются компилируемыми! Тем более HTML - это не язык программирования, а язык РАЗМЕТКИ гипертекста! +JavaScript - не компилируемый язык, а интерпретируемый!!! Если не знаешь в чём отличия - википедия тебе в помощь!!! Ты используешь HTML - придуманный людьми и задокументированный язык разметки. Если браузеры пишутся с учётом таких быдлокодеров, как ты, это не значит что таковым нужно быть!... После таких постов даже общаться нет никакого желания. |
при чём тут 1 файл или 5. Это с правильными id можно и в 1 запихнуть. Кстати, могу написать нормальный, небольшого объёма (не 182 кб). Опишите, что должен (делать страница с новостями, поздравлять) и увидие правльный и не большой код.
|
Цитата:
Цитата:
Смотрите: 1 var ld=document.getElementById(jim[xi]) и 2 var bgc=document.getElementById(jim[xi]).style Несмотря на то что "корень" (document.getElementById(jim[xi])) в обоих случаях одинаковый, полученные программые "слова" - РАЗНЫЕ. Ну это анолагично: электростанция и электростатика машина понимает 1 и 2 как как "слова" ссылающиеся на разные "понятия", несмотря на то, что они "однокоренные"... Именно по этому я не вижу в таком подходе никакого преступления :no: и не понимаю почему оно так страшно для вас и вызывает такую агресию. |
Просто такой использование id в спецификациях не предусмотрено, да и по определёнию он - уникальный идентификатор.
Ну а пользователю да, лишь бы работало |
Цитата:
Цитата:
Цитата:
У вас каша в голове. Вы хоть знаете с чем работаете?! |
Нет не знаю, это я так в игрушки играюсь... :p А вам бы и самому не мешало б почитать литературу, желательно основы... Все! Я заканчиваю обсуждение данной темы!
|
Цитата:
|
Не, он как бы переводится в некоторых случаях. Но это не строго интерпредируемый язык - это транслируемый язык
|
Цитата:
|
Цитата:
|
Я не про JavaScript а про программинг вообще.
|
Цитата:
|
Даже в момент загрузки web-страницы, браузер либо получает уже готовый машинный код страницы (если сценарий исполняется на сервере; а для пользователя выводит код в формате языка HTML - если нажать "показать исходный код"), либо получает поток информации в формате языка HTML, затем транслирует его в машинный код и передает на исполнение электронным системам компьютера!!! Это же основы!!! Все инструкции выполняются электронными системами на одном, машинном коде!!!, а языки программирования - только предоставляют удобные средства для создания этого кода силами программиста!!! :blink:
|
Код страницы - не машинный!!!!!
Машинный код это команды процу сложить регистр A с регистром B, засунув результат в C. Транслирование всегда происходит одинаково - браузер получает данные в HTML (НЕЗАВИСИМО, выполнен ли скрипт на сервере или нет), а не в машинных. А то что у вас - это (процитрую учительницу математики): Цитата:
|
Цитата:
|
Да, да - кто сомневается - установите себе какой-либо сниффер трафика. И поснифайте свой. Ну? Вам страницы в машинных кодах пришли? Сомневаюся. Израдные вставки непонятных символов - это может HTTP или вмешательство чего-то но не машинный код!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
Ну смотрите, как знаете - это Ваш недостаток в понимании электронных процессов...
|
Скорей всего, если не HTML (JS||CSS), то точно будет ZIP:)
|
Цитата:
Откуда взятся машинному коду, если в пути сервер-клиент НЕТ компилятора?! |
Электронные я знаю. Вы писали что выполненная на серваке скриптом пага приходит в маш.кодах. А это не так.
Транслирует всё уже браузер (из HTML в коды), а не сервер. И то происходит не трансляция а интерпретация. P.S. Видимо википедией тут не пользуютя. Объясню при трансляции создаёётся свой машинный код и он "тестится" 1 раз А при интерпретации каждый раз командаЯ, в цикле например, тестируется по новый. Вот основное различие трансляции и интерпретации |
А по теме.
Не уникальный "уникальные" идентификаторы лучше не юать, т.к. : сейчас это работает. Но в спецификациях этого нет. И в более поздних браузерах может не работать |
Глупый спор. Причем тут машинный код вообще?
Идентификатор на странице должен быть уникален, поскольку он используется для получения одного, уникального элемента на странице. Делать несколько элементов с одним id так же глупо, как делать массив элементов с дублирующимися ключами. Можно, но бессмысленно. Кстати вы в курсе, что по приведенному вами коду: ...<TD id="dy33"><CENTER><span class="result" id="dy33"></span></CENTER></TD>... Функция getElementById('dy33') будет всегда возвращать только элемент <td>? |
А вы попробуйте протестировать! :) - все будет работать
|
Цитата:
|
Прочитал тему от и до. Такое редко встретишь отношение, к тем кто пытается тебе помочь (B~Vladi у вас наверное большое терпение или огромное чувство юмора).
Решил зайти на страницу написанную професссионалом: <iframe width=168 height=202 name="gToday:normal:agenda.js" id="gToday:normal:agenda.js" src="flatcjs.htm" frameborder="2" scrolling="no" style="border:ridge;" onmouseover="self.focus()"> </iframe> Удивляет как это работает:lol: , что за спецификация, где можно так выражаться ;) . !DOCTYPE // где? border:ridge; // где написано что так можно выражаться? // 1-й вариант: border: border-width || border-style || color // 2-й вариант: border-style: || color width=168 height=202 // где кавчки? Утверждение, что уникальный идентификатор id = class, на мой взляд это полная ересь (относительно официальной спецификации), но это больше не доработка браузеров, что они позволяют такое назначение. Новые браузеры делают упор на отображение сайта во что бы то нибыло не смотря на спецификации W3C. А причиной этому появление различных WISIWIG редакторов типа FrontPage, Dreamweaver, пользуясь которыми современные верстальщики не знают даже, что такое HTML код и DTD, а точнее им это не надо. Смешнее всего, что среди таких верстальщиков, используются различные програмные средства для так называемой "чистки кода". Т.е. если WISIWIG редактор, где-то случайно использовал свойство CSI типа style="text-decoration: underline;", то такое ПО заменяет этот сложный и громозкий с его точки зрения код на более простой устаревший <u></u>. Все критикуют браузеры старых поколений, а новые чем лучше? На этом мне кажется можно закрыть данную тему и сделать для себя определенные выводы. |
Часовой пояс GMT +3, время: 03:41. |