<!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>
Подскажите пожалуйста причину данного явления? _________________________ Заранее спасибо |
А вы не пробовали почитать, что такое doctype и для чего он вообще нужен?
|
Конечно пробывал и возникло пара вопросов:
1. Почему это происходит выборочно, (к примеру с этим плагином), а с другими скриптами этого не случается. 2. Почему это происходит только в IE-8 и наверное в предыдущих версиях IE? То есть получается ,что IE нужно объявлять тип документа, а другие браузеры кушают это так? Вот мне и хочется узнать в чем причина данного явления. |
mgramin,
В ослах есть режим совместимости, в который они переходят если нет или не правильный доктайп. Выборочно происходит по тому что либо програмеры бедняги мучились сделать так чтобы это говно поддерживалось либо в них просто не используются некоторые вещи. это же касается вёрстки. А вообще никогда без него не пишите. |
Цитата:
|
FINoM,
Я пишу на строгом xhtml и вынужден писать до тех пор пока не станет ясности между поисковиками и html 5, основная проблема множественные заголовки. майм тайп можно и обычный ставить text/html, как все и ставят. Цитата:
P.S. Все профи верстальщики сейчас пишут на xhtml 1,0 ну и на html 5 ,а вот на html4 какраз очень мало кто пишет чтото... |
Цитата:
<INPUT DISABLED TYPE=TEXT> Цитата:
Цитата:
XHTML существует только на бумаге, никто им никогда не пользовался (может, за небольшим исключением). |
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 то это долго писать, вы и без меня найдёте в гугле всё. Цитата:
|
Цитата:
Цитата:
Цитата:
|
Цитата:
кстати, можно было просто оставить <INPUT DISABLED VALUE=NORRIS> |
| Часовой пояс GMT +3, время: 22:26. |