Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   <!DOCTYPE>+JavaScript+IE (https://javascript.ru/forum/dom-window/24423-doctype-javascript-ie.html)

mgramin 29.12.2011 14:35

<!DOCTYPE>+JavaScript+IE
 
Доброго времени суток. У меня возник вопрос:
Почему если создать HTML страницу без <!DOCTYPE>, плагин jquery.maskedinput-1.2.2 работает НУ ОЧЕНЬ своеобразно(это конечно же происходит под IE). Пример:
<html>
	<head>
	  <title></title>
<script type="text/javascript" src="jquery-1.2.6.js"></script>
<script type="text/javascript" src="jquery.maskedinput-1.2.2.js"></script>

   <script language="JavaScript" type="text/javascript">
	jQuery(function($) {
	$.mask.definitions['H']='[012]';
    $.mask.definitions['M']='[012345]';
    $.mask.definitions['K']='[01]';
    $.mask.definitions['T']='[0123]'; 
    $('#date').mask('T9.K9.2011 H9:M9:M9');
	$('#date_0').mask('T9.K9.2011 H9:M9:M9');

	});	
	</script>
	</head>
	<body>
	<p id="TextArea"> 
	<input id="date" type="text" size="15" VALUE = '01.01.2011 01:01:01'>
	</p>
	</body>
	</html>
Как видно из примера, в поле text вставилось время совершенно отличное от 01.01.2011 01:01:01. Ну и если сделать все тоже самое, только добавить <!DOCTYPE>, все отлично отработает.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
	 
	<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
	  <title></title>
<script type="text/javascript" src="jquery-1.2.6.js"></script>
<script type="text/javascript" src="jquery.maskedinput-1.2.2.js"></script>

   <script language="JavaScript" type="text/javascript">
	jQuery(function($) {
	$.mask.definitions['H']='[012]';
    $.mask.definitions['M']='[012345]';
    $.mask.definitions['K']='[01]';
    $.mask.definitions['T']='[0123]'; 
    $('#date').mask('T9.K9.2011 H9:M9:M9');
	$('#date_0').mask('T9.K9.2011 H9:M9:M9');

	});	
	</script>
	</head>
	<body>
	<p id="TextArea"> 
	<input id="date" type="text" size="15" VALUE = '01.01.2011 01:01:01'>
	</p>
	</body>
	</html>

Подскажите пожалуйста причину данного явления?
_________________________
Заранее спасибо

Skipp 29.12.2011 14:42

А вы не пробовали почитать, что такое doctype и для чего он вообще нужен?

mgramin 29.12.2011 14:53

Конечно пробывал и возникло пара вопросов:
1. Почему это происходит выборочно, (к примеру с этим плагином), а с другими скриптами этого не случается.
2. Почему это происходит только в IE-8 и наверное в предыдущих версиях IE?
То есть получается ,что IE нужно объявлять тип документа, а другие браузеры кушают это так?
Вот мне и хочется узнать в чем причина данного явления.

Seva1986 29.12.2011 15:54

mgramin,


В ослах есть режим совместимости, в который они переходят если нет или не правильный доктайп.

Выборочно происходит по тому что либо програмеры бедняги мучились сделать так чтобы это говно поддерживалось либо в них просто не используются некоторые вещи. это же касается вёрстки.

А вообще никогда без него не пишите.

FINoM 30.12.2011 02:23

Цитата:

Сообщение от Seva1986
А вообще никогда без него не пишите.

Только <!doctype html> сейчас актуален. HTML 4 — устарел, XHTML — вообще непонятная херь, которой никто не пользуется (для поддержки XHTML нужен миме тип application/xhtml+xml, который никогда не включается из-за IE).

Seva1986 30.12.2011 12:49

FINoM,

Я пишу на строгом xhtml и вынужден писать до тех пор пока не станет ясности между поисковиками и html 5, основная проблема множественные заголовки.

майм тайп можно и обычный ставить text/html, как все и ставят.

Цитата:

Сообщение от FINoM
XHTML — вообще непонятная херь

судя йз строки в про xml и SGML мало слышали.

P.S. Все профи верстальщики сейчас пишут на xhtml 1,0 ну и на html 5 ,а вот на html4 какраз очень мало кто пишет чтото...

FINoM 30.12.2011 14:43

Цитата:

Сообщение от Seva1986
майм тайп можно и обычный ставить text/html, как все и ставят.

Значит вы не пишете на xhtml, вы пишете на html. Без правильного майм тайпа браузер ничего не скажет о нарушениях синтаксиса (парсер-то не XML), и можно писать так:
<INPUT DISABLED TYPE=TEXT>
Цитата:

Сообщение от Seva1986
пока не станет ясности между поисковиками и html 5, основная проблема множественные заголовки.

Поисковики обрабатывают html без проблем. И о каких множественных заголовках тут речь?
Цитата:

Сообщение от Seva1986
судя йз строки в про xml и SGML мало слышали.

Слышал, и что? Всё, что приходит с миме text/html не считается XML, а понтоваться и делать вид, что следуете какой-то строгой спецификации смысла нет.

XHTML существует только на бумаге, никто им никогда не пользовался (может, за небольшим исключением).

Seva1986 31.12.2011 02:38

FINoM,

Я ёщё раз говорю разница есть между html и xhtml, да полностью по xml стандартам нужен application/xhtml+xml, а ещё лучше xhtml1.1 (на нём действительно никто не пишет) но всё равно даже без него xhtml ближе к xml чем html Так <INPUT DISABLED TYPE=TEXT> писать нельзя на xhtml даже с маймом text/html , а на html можно ито не уверен что при строгом доктайпе нормально будет (хотя точно не помню про html).

Никто не понтуется просто в своё время xhtml пришёл на замену html и веб развивался в сторону xhtml2.0 но это не случилось и всё пошло в сторону html5. И соответственно на данный момент последний полностью утверждённый стандарт которыми пользуются это xhtml , а не html если вам интересна разница между ними без майма application/xhtml+xml то это долго писать, вы и без меня найдёте в гугле всё.

Цитата:

Сообщение от FINoM
Поисковики обрабатывают html без проблем. И о каких множественных заголовках тут речь?

А вы разве не в крусе про множественные h1 про несколько заголовков подряд в нутри hgoup и ещё некоторые вещи? Которые поисковики надух не переваривают. Но которые разрешенны в html5. который теже поисковики на данный момент вообще толком не воспринимают, если у Вас есть информация про иследования html5 для seo особенно на счёт того что можно много h1 пихать, поделитесь пожалуйста я буду весьма признателен.

FINoM 31.12.2011 03:07

Цитата:

Сообщение от Seva1986
Так <INPUT DISABLED TYPE=TEXT> писать нельзя на xhtml даже с маймом text/html

Кто запрещает?
Цитата:

Сообщение от Seva1986
полностью утверждённый стандарт которыми пользуются это xhtml

Чем не подходит HTML4? Он не только утвержденный, но и рабочий.
Цитата:

Сообщение от Seva1986
А вы разве не в крусе про множественные h1 про несколько заголовков подряд в нутри hgoup и ещё некоторые вещи? Которые поисковики надух не переваривают.

Ну так не пишите. Если гугл бесится от двух h1 (кстати и яндекс тоже, h1 на странице может быть только один), то это не значит, что спецификация будет адаптироваться под него (или наоборот). Просто следуйте рекомендациям поисковиков, если есть цель подружить с ними страницу.

melky 31.12.2011 12:20

Цитата:

Сообщение от Seva1986 (Сообщение 147501)
<INPUT DISABLED TYPE=TEXT> писать нельзя на xhtml даже с маймом text/html

почему нельзя?

кстати, можно было просто оставить <INPUT DISABLED VALUE=NORRIS>

Seva1986 31.12.2011 12:24

Цитата:

Сообщение от FINoM
Кто запрещает?

Цитата:

Сообщение от melky
почему нельзя?

Я про валидность.

Цитата:

Сообщение от FINoM
Чем не подходит HTML4? Он не только утвержденный, но и рабочий.

Да в смысле написания на нём подходит, только зачем если есть xhtml с более строгим и более блихким к xml синтаксисом.

Тем более xhtml1.0 утверждён поле него и тоже рабочий.



Цитата:

Сообщение от FINoM
Ну так не пишите. Если гугл бесится от двух h1 (кстати и яндекс тоже, h1 на странице может быть только один), то это не значит, что спецификация будет адаптироваться под него (или наоборот). Просто следуйте рекомендациям поисковиков, если есть цель подружить с ними страницу.


Дак понятно что спека под них не будет адаптироваться , будет наоборот, только пока поисковикам пофиг на это, и так как им пофиг то с точки зрения SEO писать на 5 нет никакого смысла. Я сеqчас только про SEO говорю (не имею ввиду всё остальное хорошее что нам даёт html5)

А не использовать множественные h1 там где это нужно по стандарту html5, то получитсья некий гибрид, лично мне это не очень нравиться, особенно предположим ситуацию, когда на главной странице явно проситься несколько h1, а по дизайну нет какого либо блока более высокого по смыслу, которому можно было бы впихнуть h1 а остальным ставить h2. Вот и придётся выделить какойто один блок h1 а остальным тем же размером h2 подогнать. не очень красиво будет, особенно с точки зрения html 5.

melky 31.12.2011 12:30

Цитата:

Сообщение от Seva1986 (Сообщение 147521)
Я про валидность.

дык mime всё равно html. о какой валидности может идти речь?

Seva1986 31.12.2011 12:43

Цитата:

Сообщение от melky
дык mime всё равно html. о какой валидности может идти речь?

о валидаторе от w3c
он по разному обрабатывает html и xhtml с любым маймом

melky 31.12.2011 12:44

Цитата:

Сообщение от Seva1986 (Сообщение 147526)
о валидаторе от w3c

точно. я забыл про него.

какой толк от валидной вёрстки?

Seva1986 31.12.2011 12:47

Цитата:

Сообщение от melky
какой толк от валидной вёрстки?

во первых существует мнение что поисковики его больше любят.
во вторых это правильно.
в третьих а почему нет?


если уже забить на валидность то тогда почему не html 3.2 там вообще помойму всё что хочешь писать можно... удобно.

FINoM 31.12.2011 18:38

Цитата:

Сообщение от melky
точно. я забыл про него.

Ага, этой старой поделкой бородатых ученых еще кто-то пользуется.
Цитата:

Сообщение от Seva1986
во первых существует мнение что поисковики его больше любят

xhtml любят больше, чем html? Что-то я сомневаюсь.
Цитата:

Сообщение от Seva1986
во вторых это правильно.

o_0
Цитата:

Сообщение от Seva1986
в третьих а почему нет?

Потому что бессмысленно.
Цитата:

Сообщение от Seva1986
если уже забить на валидность то тогда почему не html 3.2

Не застал, ничего сказать не могу.

Seva1986 31.12.2011 21:53

FINoM,

Чё за бред? кчему вообще это написано? он спросил не про xhtml а про валидность.


Коороче вобщем из постов я понял что интересного для себя всё равно не услышу ничего поэтому с наступающим!!:yes:


Часовой пояс GMT +3, время: 10:12.