Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

22.03.2010, 20:48
|
UID: 44397
USER: оlbaneс
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
Провел на форуме: 5609275
Репутация:
1474
|
|
и снова я. когда вывожу таблицу календаря и отмечаю в ней текущую дату, то после неё возникает новая клетка "undefined" я хз откуда она появляется, цикл иф елзе  как избавится от этого undefined?
в коде проблемный момент прокомментирован капсом
Код:
<!DOCTYpE HTML pUBLIC "-//W3C//DTD HTML 4.01 transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<meta name="generator" content="pSpad editor, www.pspad.com">
<title></title>
<style>
body{background-image:url(http://byaki.net/uploads/posts/2008-02/1204270244_1.jpg); background-repeat: no-repeat;}
p{color:red ; }
h3{color:GreenYellow;}
h2{color:Gold;}
table {border:darkred solid 1px;}
td { text-align:center;width:40px;background-color:lightgrey;border:darkred solid 1px; }
td.one {font-weight:bold; background-color: grey; }
td.two {font-weight:bold; background-color: red; }
td.three {font-weight:bold; background-color: darkred; color:white; }
</style>
</head>
<body>
<script type="text/javascript">
var monthName= new Array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь");
var dayName = new Array("Вс","Пн","Вт","Ср","Чт","Пт","Сб");
time = new Date();
//выводим шапку с названием текущего месяца
document.write("<h3 align=center ><FONT SIZE=3>Календарь на текущий месяц:"+" "+"<h2>" +monthName[time.getMonth()]+ "</h2>" + "</FONT></h3><p ALIGN=CENTER>");
/////// находим какой день первый в этом месяце
day = time.getDay() ;
result = (time.getDate() % 7)-1 ;
if (result > day) { day += 7 ; }
firstDay = day - result ;
// document.write(firstDay) ;
// находим сколько дней в этом месяце
if (time.getMonth() == 1) {
// добавляем код если год високосный
thisYear = time.getYear() + 1900
if (thisYear % 4 == 0) {
if (thisYear % 100 == 0) {
if (thisYear % 400 == 0) { daysInMonth = 29 }
else { daysInMonth = 28 }
}
else { daysInMonth = 29 }
}
else { daysInMonth = 28 }
}
else {
if (time.getMonth() == 0 || time.getMonth() == 2 || time.getMonth() == 4 || time.getMonth() == 6 || time.getMonth() == 7 || time.getMonth() == 9 || time.getMonth() == 11) {
daysInMonth = 31 }
else { daysInMonth = 30 }
}
////////////////////////////
document.write(" <table align='center' cellpadding='5' border='0' cellspacing='0' style='filter:alpha(opacity=60); opacity:0.5'><tr>")
//рисуем заголовки дней недели. выходные красным цветом
for (var s=0; s<7; s++)
{ if (s==0 || s==6){document.write("<td class='two'>"+dayName[s]+"</td>");}else
document.write("<td class='one'>"+dayName[s]+"</td>");
}
document.write("</tr>")
//рисуем пустые дни
for (i = 0; i < firstDay; i++) {
document.write("<td >  </td>")
}
// рисуем дни
d = firstDay
for (i = 1; i <= daysInMonth; i++) {
if (!(d < 7)) {
document.write("<tr>")
d = 0 }
if (i == time.getDate()) { //показываем сегодняшний день
dispDay = document.write("<td class='three'>"+i+"</td>"); //ВОТ ТУТ КОСЯК - ЕСЛИ УБРАТЬ ДОКУМЕНТ.ВРАЙТ И ТЕГИ ТО ВЫВОДИТ НОРМАЛЬНО
}
else { dispDay = i }
document.write("<td ><p ALIGN=CENTER>" + dispDay + "</p></td>")
d++
}
//рисуем пустые клетки в полседние пустые дни
if (d < 7) {
for (i = d; i < 7; i++) {
document.write("<td >  </td>")
}
}
document.write("</tr></TABLE>")
</script>
</body>
</html>
|
|
|

23.03.2010, 02:46
|
UID: 75667
USER: dr.Web
Участник форума
Регистрация: 02.02.2009
Сообщений: 146
Провел на форуме: 1093500
Репутация:
43
|
|
Ты не правильно код написал.
PHP код:
<!DOCTYpE HTML pUBLIC "-//W3C//DTD HTML 4.01 transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<meta name="generator" content="pSpad editor, www.pspad.com">
<title></title>
<style>
body{background-image:url(http://byaki.net/uploads/posts/2008-02/1204270244_1.jpg); background-repeat: no-repeat;}
p{color:red ; }
h3{color:GreenYellow;}
h2{color:Gold;}
table {border:darkred solid 1px;}
td { text-align:center;width:40px;background-color:lightgrey;border:darkred solid 1px; }
td.one {font-weight:bold; background-color: grey; }
td.two {font-weight:bold; background-color: red; }
td.three {font-weight:bold; background-color: darkred; color:white; }
</style>
</head>
<body>
<script type="text/javascript">
var monthName= new Array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь");
var dayName = new Array("Вс","Пн","Вт","Ср","Чт","Пт","Сб");
time = new Date();
//выводим шапку с названием текущего месяца
document.write("<h3 align=center ><FONT SIZE=3>Календарь на текущий месяц:"+" "+"<h2>" +monthName[time.getMonth()]+ "</h2>" + "</FONT></h3><p ALIGN=CENTER>");
/////// находим какой день первый в этом месяце
day = time.getDay() ;
result = (time.getDate() % 7)-1 ;
if (result > day) { day += 7 ; }
firstDay = day - result ;
// document.write(firstDay) ;
// находим сколько дней в этом месяце
if (time.getMonth() == 1) {
// добавляем код если год високосный
thisYear = time.getYear() + 1900
if (thisYear % 4 == 0) {
if (thisYear % 100 == 0) {
if (thisYear % 400 == 0) { daysInMonth = 29 }
else { daysInMonth = 28 }
}
else { daysInMonth = 29 }
}
else { daysInMonth = 28 }
}
else {
if (time.getMonth() == 0 || time.getMonth() == 2 || time.getMonth() == 4 || time.getMonth() == 6 || time.getMonth() == 7 || time.getMonth() == 9 || time.getMonth() == 11) {
daysInMonth = 31 }
else { daysInMonth = 30 }
}
////////////////////////////
document.write(" <table align='center' cellpadding='5' border='0' cellspacing='0' style='filter:alpha(opacity=60); opacity:0.5'><tr>")
//рисуем заголовки дней недели. выходные красным цветом
for (var s=0; s<7; s++)
{ if (s==0 || s==6){document.write("<td class='two'>"+dayName[s]+"</td>");}else
document.write("<td class='one'>"+dayName[s]+"</td>");
}
document.write("</tr>")
//рисуем пустые дни
for (i = 0; i < firstDay; i++) {
document.write("<td >  </td>")
}
// рисуем дни
d = firstDay
for (i = 1; i <= daysInMonth; i++) {
if (!(d < 7)) {
document.write("<tr>")
d = 0 }
if (i == time.getDate()) { //показываем сегодняшний день
dispDay = document.write("<td style=color:red class='three'>"+time.getDate()+"</td>"); //ВОТ ТУТ КОСЯК - ЕСЛИ УБРАТЬ ДОКУМЕНТ.ВРАЙТ И ТЕГИ ТО ВЫВОДИТ НОРМАЛЬНО
}
else {dispDay=document.write("<td ><p ALIGN=CENTER>" + i + "</p></td>")}
//alert(dispDay);//раскомментируй и увидишь почему undefined было
d++
}
//рисуем пустые клетки в полседние пустые дни
if (d < 7) {
for (i = d; i < 7; i++) {
document.write("<td >  </td>")
}
}
document.write("</tr></TABLE>")
</script>
</body>
</html>
Видишь что такое dispDay? это операция вывода на экран а ты её в переменную пытаешься вывести.
Последний раз редактировалось dr.Web; 23.03.2010 в 03:02..
|
|
|

23.03.2010, 12:07
|
UID: 44397
USER: оlbaneс
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
Провел на форуме: 5609275
Репутация:
1474
|
|
ну от undefined я вчера избавился убрав document.write. получилось
dispDay = "<td class='three'>"+i+"</td>";
однако теперь пропускает клетку и выходит за таблицу. задача выделить клетку с сегодняшней датой. как?
|
|
|

23.03.2010, 13:35
|
UID: 117058
USER: SeregaZ
Новичок
Регистрация: 07.03.2010
Сообщений: 4
Провел на форуме: 5563
Репутация:
0
|
|
кто знает как посредством javascript'а проверить текст на наличие капслока? причем учитывая что слова могут начинаться с большой буквы - будь то первое слово в предложении или имя или название чего либо?
сейчас у меня происходит проверка на некоторые популярные слоги русского языка. типа если нашел какой-либо слог - значит капс. но это не очень надежно. вот % отношение капса от общего количества текста вычислять бы... и типа если больше 60% текста капс - значит капс.
|
|
|

23.03.2010, 13:45
|
UID: 44397
USER: оlbaneс
Moderator - Level 7
Регистрация: 05.11.2007
Сообщений: 894
Провел на форуме: 5609275
Репутация:
1474
|
|
Сообщение от SeregaZ
кто знает как посредством javascript'а проверить текст на наличие капслока? причем учитывая что слова могут начинаться с большой буквы - будь то первое слово в предложении или имя или название чего либо?
сейчас у меня происходит проверка на некоторые популярные слоги русского языка. типа если нашел какой-либо слог - значит капс. но это не очень надежно. вот % отношение капса от общего количества текста вычислять бы... и типа если больше 60% текста капс - значит капс.
http://www.google.ru/search?num=50&hl=ru&safe=off&client=firefox&hs=nrL &rls=org.mozilla%3Aru%3Aofficial&q=+%D0%B8%D0%B7%D 0%BC%D0%B5%D0%BD%D0%B8%D1%82%D1%8C+%D0%B2%D0%B5%D1 %80%D1%85%D0%BD%D0%B8%D0%B9+%D1%80%D0%B5%D0%B3%D0% B8%D1%81%D1%82%D1%80+%D1%8F%D0%B2%D0%B0+%D1%81%D0% BA%D1%80%D0%B8%D0%BF%D1%82&lr=&aq=f&aqi=&aql=&oq=& gs_rfai=
в первой ссылке
//принимает строку и возвращает её в нижнем регистре
function lCase(s){return s.toLowerCase();}
//заменяем выделенную строку в нижний регистр
replaceSelectedText(document.formName.textareaName ,'lCase');
|
|
|

23.03.2010, 14:10
|
UID: 117058
USER: SeregaZ
Новичок
Регистрация: 07.03.2010
Сообщений: 4
Провел на форуме: 5563
Репутация:
0
|
|
а причем тут это? что-то я слабо себе представляю как эти функции обработают мой текст и выдадут мне сообщение: "этот текст написан капслоком"
|
|
|

23.03.2010, 17:28
|
UID: 62487
USER: Fliplab
Участник форума
Регистрация: 29.07.2008
Сообщений: 128
Провел на форуме: 225836
Репутация:
34
|
|
Подскажите плиз, есть некий список <select name="algo"> <option что-то там> и есть чуть ниже <font id="example">какойто текст</font>. Так вот надо при выборе какого-то <option> засунуть текст в example)))
<script type="text/javascript">
function zamena(id,text) {
document.getElementById(id).innerHTML = text;
}
</script>
<select name="algo">
<option value="1223" class="area" onclick="javasript:zamena('example',this.value);" />
</select>
<font id="example">Текст для замены</div>
выше перечисленное не работает(
|
|
|

23.03.2010, 17:44
|
UID: 16688
USER: GreenBear
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
PHP код:
<script type="text/javascript">
function zamena(id,text)
{
document.getElementById(id).innerHTML = text;
}
</script>
<select name="algo" onchange="zamena('example',this.options[this.selectedIndex].value);">
<option value="test">test</option>
<option value="1223" class="area">replace</option>
</select>
<font id="example">Текст для замены</div>

|
|
|

23.03.2010, 17:52
|
UID: 117058
USER: SeregaZ
Новичок
Регистрация: 07.03.2010
Сообщений: 4
Провел на форуме: 5563
Репутация:
0
|
|
сцуко, не успел  и все таки как текст написанный большими буквами определять скриптом?
|
|
|

23.03.2010, 17:55
|
UID: 62487
USER: Fliplab
Участник форума
Регистрация: 29.07.2008
Сообщений: 128
Провел на форуме: 225836
Репутация:
34
|
|
GreenBear спасибо)
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|