<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>Бегущая по граблям</title><description></description><managingEditor>noreply@blogger.com (Victoria)</managingEditor><pubDate>Tue, 8 Oct 2024 19:02:45 -0700</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">21</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://webmaster-notes.blogspot.com/</link><language>en-us</language><itunes:explicit>no</itunes:explicit><itunes:subtitle/><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><item><title>Преобразование c# DateTime в JavaScript Date</title><link>http://webmaster-notes.blogspot.com/2013/02/c-datetime-javascript-date.html</link><category>date</category><category>javascript</category><category>регулярные выражения</category><author>noreply@blogger.com (Victoria T)</author><pubDate>Wed, 27 Feb 2013 05:57:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-6235317924472350264</guid><description>Задача: привести сериализованный c# DateTime к объекту Date JavaScript.&lt;br /&gt;&lt;br /&gt;Сериализованный объект DateTime мы на клиенте получаем вот в таком виде: &lt;br /&gt;&lt;b&gt;"/Date(1361886511108)/" &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Первое, что нам нужно сделать - удалить из сообщения все текстовые символы (кроме "+").&lt;br /&gt;&lt;br /&gt;&lt;b&gt;var d = "/Date(1361886511108)/";&lt;br /&gt;d = d.replace(/[^0-9 +]/g, '');  &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Ну и далее - создаем объект Date, не забывая преобразовать наши данные в int.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;var myDate = new Date(parseInt(d));&lt;/b&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>Подключаем нестандартные шрифты. @Font-face для IE 9.</title><link>http://webmaster-notes.blogspot.com/2013/02/font-face-ie-9.html</link><category>css</category><category>css3</category><category>ie</category><category>верстка</category><category>шрифты</category><author>noreply@blogger.com (Victoria T)</author><pubDate>Wed, 20 Feb 2013 05:56:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-3980944966957232611</guid><description>CSS3 позволяет легко и просто подключить нестандартный шрифт с помощью правила @font-face. &lt;br /&gt;
Вот так:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
@font-face&amp;nbsp;&lt;/blockquote&gt;
&lt;blockquote&gt;
{&lt;br /&gt;
font-family: "MyFont"; /* Имя шрифта */&lt;br /&gt;
src: url(fonts/MyFont.ttf); /* Путь к файлу со шрифтом */&lt;br /&gt;
}&lt;br /&gt;
&amp;nbsp;P {
 font-family: MyFont;
 }&lt;/blockquote&gt;
&lt;br /&gt;Для WebKit и Mozilla достаточно этого синтаксиса, но для совместимости с IE придётся повозиться. &lt;br /&gt;Во-первых, IE не поддерживает шрифты в формате .ttf. &lt;br /&gt;Для IE 6-8 версий нужен шрифт в формате &lt;b&gt;.eot&lt;/b&gt;, для IE 9 нужен формат &lt;b&gt;.woff&lt;/b&gt;. &lt;br /&gt;Поэтому придется переконвертировать наш шрифт в два дополнительных формата, и наш код&lt;b&gt; @font-face&lt;/b&gt; будет выглядеть вот так:&lt;br /&gt;
&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;
@font-face&amp;nbsp;&lt;/blockquote&gt;
&lt;blockquote&gt;
{&lt;br /&gt;
font-family: "MyFont";&lt;br /&gt;
src: url(fonts/MyFont.eot); /* for IE6-8 */&lt;br /&gt;
src: local("☺"), url(fonts/MyFont.ttf) format("truetype"), /* for Firefox 3, Safari */&lt;br /&gt; url(fonts/MyFont.woff) format("woff"); /* for IE9 */&amp;nbsp;&lt;/blockquote&gt;
&lt;blockquote&gt;
} &lt;/blockquote&gt;
&lt;br /&gt;Обратите внимание на &lt;b&gt;смайлик &lt;/b&gt;после local. &lt;br /&gt;У меня в IE 9 не работал шрифт с любыми другими символами, кроме этого смайлика. &lt;br /&gt;Подробно об этом чудо-смайлике можно прочесть здесь &lt;a href="http://paulirish.com/2010/font-face-gotchas/#smiley"&gt;http://paulirish.com/2010/font-face-gotchas/#smiley&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;Есть еще одна проблема с woff шрифтом. &lt;br /&gt;IIS 7 не знает такого типа файлов, для него нужно прописать вручную &lt;b&gt;MIME-TYPE&lt;/b&gt;, причем тип я указала &lt;b&gt;application/octet-stream&lt;/b&gt; , как и для файла .ttf.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total></item><item><title>Выводим javascript alert с серверной стороны asp.net</title><link>http://webmaster-notes.blogspot.com/2013/01/javascript-alert-aspnet.html</link><category>alert</category><category>asp.net</category><category>javascript</category><category>scriptmanager</category><author>noreply@blogger.com (Victoria T)</author><pubDate>Wed, 16 Jan 2013 01:42:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-5528947010469375591</guid><description>Иногда бывает нужно вывести в браузере стандартное окошко alert, но сделать это с серверной стороны, а не с клиентской.&lt;br /&gt;
&lt;br /&gt;
Это очень просто. Например, так:
&lt;br /&gt;
&lt;blockquote&gt;
Response.Write("&amp;lt;script&amp;gt;alert('Your message');&amp;lt;/script&amp;gt;");
&lt;/blockquote&gt;
Alert появится вместо страницы, по нажатию на Ok загрузится страница.&lt;br /&gt;
&lt;br /&gt;
И еще один способ, используем &lt;b&gt;ScriptManager&lt;/b&gt;:
&lt;br /&gt;
&lt;blockquote&gt;
ScriptManager.RegisterStartupScript(this, GetType(), "asyncscript", "alert('Your message');", true);
&lt;/blockquote&gt;
В данном случае загрузится страница, и на ней появится alert.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Попытка редактировать изображения на html5 canvas</title><link>http://webmaster-notes.blogspot.com/2012/08/html5-canvas.html</link><category>html5</category><category>javascript</category><author>noreply@blogger.com (Victoria T)</author><pubDate>Mon, 20 Aug 2012 04:28:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-6728858382239885258</guid><description>Появилась задача редактировать фотографии online - изменять контраст, яркость, применять эффекты - сепия, черно/белый и прочие красивости. С моей любовью к яваскрипту я, конечно же, первым делом пошла искать решение на html5 canvas.&lt;br /&gt;
&lt;br /&gt;
Самое достойное, что я нашла - библиотека Pixastic &lt;a href="http://pixastic.com/"&gt;http://pixastic.com/&lt;/a&gt; (там сейчас на сайте демо не работает. написала разработчику - сказал, что посмотрит, но за месяц так и не посмотрел) Быстро, удобно, реализовано достаточно эффектов, стабильно работает - рекомендую. Но, как обычно, я упёрлась в стену под названием IE :( С IE ниже 9 версии о таких серьезных задачах на html5 можно забыть, а для заказчика поддержка IE8 принципиально важна&lt;br /&gt;
&lt;br /&gt;Собственно, есть еще одна проблема - мне необходимо редактировать изображения в большом разрешении и с хорошим качеством: они потом используются в fullHD видео. В браузере результирующее изображение имеет размер того canvas, в котором оно расположено, т.е. небольшой области экрана. Можно, конечно, выводить картинку в скрытый через css огромный canvas, но страница будет тяжелой и тормозящей.&lt;br /&gt;
&lt;br /&gt;
По сему было решено редактировать картинки на серверной стороне, с чем прекрасно справилась  &lt;a href="http://www.aforgenet.com/aforge/framework/"&gt;библиотечка AForge&lt;/a&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>IE 6 еще живой?</title><link>http://webmaster-notes.blogspot.com/2012/05/ie-6.html</link><category>css3</category><category>ie</category><author>noreply@blogger.com (Victoria T)</author><pubDate>Wed, 16 May 2012 05:03:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-8239444542812400870</guid><description>Обалдеть, неужели кто-то еще серьезно поддерживает IE 6?.. В комментариях к статье по css3 &lt;b&gt;:nth-child&lt;/b&gt; селектору возмущаются, что это не работает в IE6. Удивлена. Как они вообще попали на эту статью, да и зачем?.. :)</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Что использовать: Hiddenfield или Viewstate?</title><link>http://webmaster-notes.blogspot.com/2012/05/hiddenfield-viewstate.html</link><category>asp.net</category><category>viewstate</category><author>noreply@blogger.com (Victoria T)</author><pubDate>Tue, 8 May 2012 06:12:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-694189988284810392</guid><description>При необходимости сохранить какой-то параметр на странице между постбеками приходится выбирать, что для этого использовать - Hiddenfield или Viewstate.&lt;br /&gt;
&lt;br /&gt;
Viewstate во многих случаях значительно увеличивает объем страницы, что делает ее медленной, например, если использовать Viewstate с Gridview. К тому же, Viewstate все равно помещается на странице в Hiddenfield :)&lt;br /&gt;
&lt;br /&gt;
С точки зрения безопасности - данные во Viewstate уже закодированные, а свой собственный Hiddenfield нужно шифровать самостоятельно, если это необходимо.&lt;br /&gt;
&lt;br /&gt;
С точки зрения разработки - работать с Viewstate проще: меньше строчек кода, соответственно легче отлаживать и проще будет другому разработчику работать с вашей страницей.&lt;br /&gt;
&lt;br /&gt;
Ну и принципиальная разница - &lt;b&gt;если нужно иметь доступ к полю клиентским скриптам, то берем Hiddenfield&lt;/b&gt;, потому что данные Viewstate для клиентских скриптов недоступны.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>CSS3 непрозрачный элемент на прозрачном</title><link>http://webmaster-notes.blogspot.com/2012/04/css3.html</link><category>css</category><category>css3</category><category>верстка</category><category>позиционирование</category><category>прозрачность</category><author>noreply@blogger.com (Victoria T)</author><pubDate>Thu, 5 Apr 2012 05:28:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-6790573565872077338</guid><description>CSS3 предлагает нам свойство opacity, которое позволяет задать элементу прозрачность. Всё бы хорошо, но все потомки элемента наследуют значение opacity родителя, и переопределить его никак нельзя.&lt;br /&gt;
&lt;br /&gt;
Таким образом, для того, чтобы получить на прозрачном фоне непрозрачный текст, нам необходимо этот текст помещать в блок, который не является потомком блока с прозрачным фоном.&lt;br /&gt;
&lt;br /&gt;
Простенький пример&lt;br /&gt;
&lt;blockquote&gt;
&amp;lt;div id="elementWrap"&amp;gt;&lt;br /&gt;
&amp;lt;div class="transparent"&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class="notTransparent"&amp;gt;&lt;br /&gt;
&amp;lt;span&amp;gt;Lorem ipsum dolor&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/blockquote&gt;
&lt;br /&gt;
CSS&lt;br /&gt;
&lt;blockquote&gt;
.transparent{&lt;br /&gt;
width: 100%;&lt;br /&gt;
height: 100%;&lt;br /&gt;
position: absolute;&lt;br /&gt;
top: 0;&lt;br /&gt;
left: 0;&lt;br /&gt;
z-index: 1000;&lt;br /&gt;
background-color: #777777;&lt;br /&gt;
opacity: 0.7;&lt;br /&gt;
filter: alpha(opacity=70);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
.notTransparent{&lt;br /&gt;
width: 400px;&lt;br /&gt;
height: auto;&lt;br /&gt;
top: 50%;&lt;br /&gt;
position: absolute;&lt;br /&gt;
z-index: 1001;&lt;br /&gt;
left: 50%;&lt;br /&gt;
background-color: #B5B5B5;&lt;br /&gt;
border-radius: 15px;&lt;br /&gt;
border: solid 3px #4F4F4F;&lt;br /&gt;
padding: 10px;&lt;br /&gt;
margin: 0 auto;&lt;br /&gt;
margin-top: -50px;&lt;br /&gt;
margin-left: -200px;&lt;br /&gt;
text-align: center;&lt;br /&gt;
}&lt;/blockquote&gt;
&lt;br /&gt;
В этом примере прозрачный блок при помощи z-index перекрывает собой всю страницу и таким образом блокирует доступ к всем элементам. Непрозрачный блок выводится поверх прозрачного (у него значение z-index больше). &lt;br /&gt;
&lt;br /&gt;
Я использовала такую схему, чтобы перекрыть пользователю доступ к странице, пока он не заполнит всю информацию, требуемую на непрозрачном блоке. После заполнения требуемых полей и нажатия на кнопку форма вместе с прозрачным фоном пряталась, и можно было продолжить работу со страницей.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">8</thr:total></item><item><title>JSON.stringify() для IE 7</title><link>http://webmaster-notes.blogspot.com/2012/04/jsonstringify-ie-7.html</link><category>ajax</category><category>javascript</category><category>json</category><author>noreply@blogger.com (Victoria)</author><pubDate>Mon, 2 Apr 2012 05:18:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-1072951453388217080</guid><description>Наш любимый IE7 не предоставляет метода JSON.stringify(). IE8 с JSON уже работает, а вот IE7 - никак нет. Со сторонними библиотеками я не работаю, поэтому все грабли приходится обходить вручную. &lt;br /&gt;&lt;br /&gt;Нашла отличную статью о том, как победить IE7:&lt;br /&gt;&lt;a href="http://www.sitepoint.com/javascript-json-serialization/"&gt;Cross-browser JSON Serialization in JavaScript&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;С точки зрения безопасности простенький JSON.parse() из этой статьи - не лучшее решение. Я в данный момент использую только JSON.stringify(), parse мне не нужен.&lt;br /&gt;&lt;br /&gt;На случай, если оригинальная статья пропадет, копирую оттуда код для JSON.stringify() и JSON.parse().&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;var JSON = JSON || {};&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote&gt;// implement JSON.stringify serialization&lt;br /&gt;JSON.stringify = JSON.stringify || function (obj) {&lt;br /&gt; var t = typeof (obj);&lt;br /&gt; if (t != "object" || obj === null) {&lt;br /&gt;  // simple data type&lt;br /&gt;  if (t == "string") obj = '"'+obj+'"';&lt;br /&gt;  return String(obj);&lt;br /&gt; }&lt;br /&gt; else {&lt;br /&gt;  // recurse array or object&lt;br /&gt;  var n, v, json = [], arr = (obj &amp;&amp; obj.constructor == Array);&lt;br /&gt;  for (n in obj) {&lt;br /&gt;   v = obj[n]; t = typeof(v);&lt;br /&gt;   if (t == "string") v = '"'+v+'"';&lt;br /&gt;   else if (t == "object" &amp;&amp; v !== null) v = JSON.stringify(v);&lt;br /&gt;   json.push((arr ? "" : '"' + n + '":') + String(v));&lt;br /&gt;  }&lt;br /&gt;  return (arr ? "[" : "{") + String(json) + (arr ? "]" : "}");&lt;br /&gt; }&lt;br /&gt;};&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote&gt;// implement JSON.parse de-serialization&lt;br /&gt;JSON.parse = JSON.parse || function (str) {&lt;br /&gt; if (str === "") str = '""';&lt;br /&gt; eval("var p=" + str + ";");&lt;br /&gt; return p;&lt;br /&gt;};&lt;/blockquote&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">11</thr:total></item><item><title>вызываем window.onload несколько раз</title><link>http://webmaster-notes.blogspot.com/2012/03/windowonload.html</link><category>javascript</category><category>события</category><author>noreply@blogger.com (Victoria)</author><pubDate>Fri, 30 Mar 2012 05:29:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-6749834928420154801</guid><description>Известно, что &lt;span style="font-weight:bold;"&gt;определить событие window.onload на странице мы можем только один раз. Каждое следующее определение window.onload затирает предыдущее&lt;/span&gt;. Что же делать, если возникла необходимость прописать его повторно? &lt;br /&gt;&lt;br /&gt;Все очень просто. Нужно сохранить старое событие, и переопределить window.onload так, чтобы сначала вызывалось старое событие, а потом уже наши дополнительные методы.&lt;br /&gt;&lt;br /&gt;Например,&lt;br /&gt;&lt;blockquote&gt;var saveOnLoad = window.onload;&lt;br /&gt;window.onload = function(){&lt;br /&gt;saveOnLoad();&lt;br /&gt;newOnLoadFunction1();&lt;br /&gt;newOnLoadFunction2();&lt;br /&gt;...&lt;br /&gt;}&lt;/blockquote&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total></item><item><title>создаем css стили динамически</title><link>http://webmaster-notes.blogspot.com/2012/03/css.html</link><category>asp.net</category><category>css</category><category>верстка</category><author>noreply@blogger.com (Victoria)</author><pubDate>Tue, 20 Mar 2012 03:13:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-333117328049386082</guid><description>Я в свое время долго ломала голову, как прописывать css стили динамически с серверной стороны, причем не просто установить свойство &lt;span style="font-weight:bold;"&gt;CssClass&lt;/span&gt;, а прописать конкретно margin или padding. &lt;br /&gt;Оказывается, всё предельно просто: у элементов есть свойство &lt;span style="font-weight:bold;"&gt;Style&lt;/span&gt;. Пользоваться им вот так:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Elem.Style.Add("margin-top", "40px");&lt;/blockquote&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>как узнать, сколько сообщений находится в MSMQ?</title><link>http://webmaster-notes.blogspot.com/2011/11/msmq.html</link><category>msmq</category><author>noreply@blogger.com (Victoria)</author><pubDate>Fri, 11 Nov 2011 03:49:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-5830942519754178804</guid><description>Задача: необходимо узнать, &lt;span style="font-weight:bold;"&gt;сколько сообщений находится в очереди сообщений MSMQ, не получая эти сообщения&lt;/span&gt;. Также необходимо определить, какое место в очереди занимает заданное сообщение.&lt;br /&gt;&lt;br /&gt;У меня получилось так:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;int num = 0;&lt;br /&gt;if (MessageQueue.Exists("path to your queue"))&lt;br /&gt;                {&lt;br /&gt;                    MessageQueue mq = new MessageQueue("path to your queue", QueueAccessMode.Peek);&lt;br /&gt;                    var messages = mq.GetMessageEnumerator2();&lt;br /&gt;                    while (messages.MoveNext())&lt;br /&gt;                    {&lt;br /&gt;                        num++;&lt;br /&gt;                    }&lt;br /&gt;                }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;В конструкторе MessageQueue() обязательно указываем метод доступа к очереди &lt;span style="font-weight:bold;"&gt;Peek&lt;/span&gt;, который не удаляет сообщения из очереди.&lt;br /&gt;Если необходимо узнать, какое место в очереди занимает наше сообщение, добавляем сравнение поля Label очереди в цикл while.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;while (messages.MoveNext())&lt;br /&gt;                    {&lt;br /&gt;                        if (messages.Current.Label != "someCustomLabel")&lt;br /&gt;                            num++;&lt;br /&gt;                        else&lt;br /&gt;                            break;&lt;br /&gt;                    }&lt;br /&gt;&lt;/blockquote&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>совет от профессионала</title><link>http://webmaster-notes.blogspot.com/2011/10/blog-post_25.html</link><author>noreply@blogger.com (Victoria)</author><pubDate>Tue, 25 Oct 2011 00:25:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-8283634030290188141</guid><description>&lt;blockquote&gt;The easiest way to optimise code is to follow the rule of KISS (Keep It Simple, Stupid). If you keep your code as simple as possible it will most likely be optimised from the start or then it will be very easy to optimise later.&lt;br /&gt;(c) Mikko Haapoja&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;изучаю, как рисовать 3d при помощи javascript.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Visibility vs Display</title><link>http://webmaster-notes.blogspot.com/2011/10/visibility-vs-display.html</link><category>css</category><category>верстка</category><author>noreply@blogger.com (Victoria)</author><pubDate>Mon, 24 Oct 2011 04:18:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-7244740044176965874</guid><description>Чем отличаются css свойства visibility и display?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Visibility: visible&lt;/span&gt; - элемент виден на странице&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Visibility: hidden&lt;/span&gt; - элемент скрыт, но все остальные блоки ведут себя так, будто он присутствует. Его ширина-высота доступны в clientWidth и clientHeight.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Display: block&lt;/span&gt; - элемент виден на странице&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Display: none&lt;/span&gt; - элемент скрыт, и остальные элемент ведут себя так, будто его нет.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Выравниваем меню по центру</title><link>http://webmaster-notes.blogspot.com/2011/10/blog-post.html</link><category>верстка</category><category>меню</category><category>позиционирование</category><author>noreply@blogger.com (Victoria)</author><pubDate>Mon, 3 Oct 2011 02:45:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-6380495758425972461</guid><description>Часто возникает необходимость выровнять меню, представляющее собой список ul li, горизонтально по центру страницы. Ширина меню нам неизвестна, она может изменяться в зависимости от страницы, поэтому задать жесткие отступы - не вариант.&lt;br /&gt;&lt;br /&gt;Я поступаю следующим образом.&lt;br /&gt;Заворачиваем наше меню в два div'а. &lt;br /&gt;&lt;br /&gt;&amp;lt;div id=&amp;quot;menu-wrap&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div id=&amp;quot;menu&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ul&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;li&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;li&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/ul&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;br /&gt;Верхнему div'у задаем фиксированную ширину. Это максимально возможная ширина нашего меню.&lt;br /&gt;&lt;br /&gt;Второму div'у задаем &lt;span style="font-weight:bold;"&gt;margin-left:50%&lt;/span&gt;, а самому списку ul &lt;span style="font-weight:bold;"&gt;margin-left:-50%&lt;/span&gt;. &lt;br /&gt;&lt;br /&gt;Для кроссбраузерности обязательно всем трем блокам задаем &lt;span style="font-weight:bold;"&gt;position:relative&lt;/span&gt;, а второму div'у и списку ul &lt;span style="font-weight:bold;"&gt;float:left&lt;/span&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Регулярные выражения для javascript</title><link>http://webmaster-notes.blogspot.com/2011/08/javascript.html</link><category>регулярные выражения</category><author>noreply@blogger.com (Victoria)</author><pubDate>Tue, 23 Aug 2011 02:59:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-2795759342802088925</guid><description>Задача: написать проверку сложности пароля. Пароль должен иметь длину не менее 5 символов, и содержать в себе хотя бы одну цифру, при этом пароль может содержать только цифры и латинские буквы в верхнем и нижнем регистре.
&lt;br /&gt;
&lt;br /&gt;Получившееся у меня выражение:
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;((?=.*\d).(?!.*\W).{5,20})&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a href="http://topcode.ru/2009/12/02/10-regulyarnyx-vyrazhenij-kotorye-budut-polezny-kazhdomu-java-programmistu/"&gt;Здесь можно посмотреть шаблоны регулярных выражений, с объяснением как они работают&lt;/a&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Настраиваем IPN для работы с PayPal</title><link>http://webmaster-notes.blogspot.com/2011/08/ipn-paypal.html</link><category>paypal</category><author>noreply@blogger.com (Victoria)</author><pubDate>Fri, 12 Aug 2011 02:46:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-2426329628224221882</guid><description>Пришлось порядком повозиться, чтобы заставить сайт мгновенно узнавать о том, что пользователь оплатил заказ. Работаем с PayPal напрямую, без сайтов-посредников, возвращение пользователя на наш сайт также не требуется. PayPal сам отправляет нам post-запрос &lt;a href="https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&amp;content_ID=developer/e_howto_html_IPNandPDTVariables"&gt;с кучей заголовков&lt;/a&gt;, как только платеж совершен. 
&lt;br /&gt;
&lt;br /&gt;Вот здесь понятно описано, с примером для c# &lt;a href="http://www.codeproject.com/KB/aspnet/paypal_c_aspnet.aspx#IPN"&gt;http://www.codeproject.com/KB/aspnet/paypal_c_aspnet.aspx#IPN&lt;/a&gt;
&lt;br /&gt;
&lt;br /&gt;Вкратце:
&lt;br /&gt;1. Нам приходит post-запрос.
&lt;br /&gt;2. Сохраняем его и отправляем обратно на PayPal, чтобы проверить, действительно ли платеж совершен, или это хак.
&lt;br /&gt;3. Получаем ответ от PayPal - Verified - если платеж совершен, или Invalid, если такого платежа не было. Ну и обрабатываем данные.
&lt;br /&gt;
&lt;br /&gt;Свои параметры для пост-обработки заказа передаем с формы через параметр &lt;span style="font-weight:bold;"&gt;custom&lt;/span&gt;.
&lt;br /&gt;&lt;blockquote&gt;&amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;custom&amp;quot; value=&amp;quot;our params&amp;quot;&amp;gt;&lt;/blockquote&gt;
&lt;br /&gt;
&lt;br /&gt;При обработке ответа сервера не забываем проверить адресата платежа, сумму и валюту.
&lt;br /&gt;
&lt;br /&gt;Для тестов регистрируемся на &lt;a href="https://www.sandbox.paypal.com/"&gt;Sandbox.paypal.com&lt;/a&gt;, создаем тестового продавца и покупателя, и вперёд.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>масштабное падение Skype</title><link>http://webmaster-notes.blogspot.com/2011/05/skype.html</link><category>microsoft</category><category>skype</category><author>noreply@blogger.com (Victoria)</author><pubDate>Thu, 26 May 2011 09:39:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-2250277300031921664</guid><description>Сегодня волшебным образом у всего нашего офиса упал Skype. Почти одновременно на всех компьютерах программа выдала исключение и закрылась. Часа через полтора удалось запустить Skype на компьютере с Win7, на WinXP по прежнему вылетает исключение сразу при попытке запуска. &lt;br /&gt;&lt;br /&gt;Известно, что накануне всеми любимая компания Microsoft купила Skype. Неужели теперь под WinXP о Skype можно будет и не мечтать?..</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>список штатов сша - asp.net dropdownlist</title><link>http://webmaster-notes.blogspot.com/2011/05/aspnet-dropdownlist.html</link><category>asp.net</category><category>dropdownlist</category><category>usa states</category><author>noreply@blogger.com (Victoria)</author><pubDate>Tue, 17 May 2011 05:53:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-5693139955012722376</guid><description>Может, кому-то пригодится. ASP.NET DropDownlist со списком штатов США.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;asp:DropDownList ID=&amp;quot;state&amp;quot; runat=&amp;quot;server&amp;quot; Width=&amp;quot;160px&amp;quot;&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;AL&amp;quot; Text=&amp;quot;Alabama&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;AK&amp;quot; Text=&amp;quot;Alaska&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;AZ&amp;quot; Text=&amp;quot;Arizona&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;AR&amp;quot; Text=&amp;quot;Arkansas&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;CA&amp;quot; Text=&amp;quot;California&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;CO&amp;quot; Text=&amp;quot;Colorado&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;CT&amp;quot; Text=&amp;quot;Connecticut&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;DE&amp;quot; Text=&amp;quot;Delaware&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;DC&amp;quot; Text=&amp;quot;District of Columbia&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;FL&amp;quot; Text=&amp;quot;Florida&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;GA&amp;quot; Text=&amp;quot;Georgia&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;HI&amp;quot; Text=&amp;quot;Hawaii&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;ID&amp;quot; Text=&amp;quot;Idaho&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;IL&amp;quot; Text=&amp;quot;Illinois&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;IN&amp;quot; Text=&amp;quot;Indiana&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;IA&amp;quot; Text=&amp;quot;Iowa&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;KS&amp;quot; Text=&amp;quot;Kansas&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;KY&amp;quot; Text=&amp;quot;Kentucky&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;LA&amp;quot; Text=&amp;quot;Louisiana&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;ME&amp;quot; Text=&amp;quot;Maine&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;MD&amp;quot; Text=&amp;quot;Maryland&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;MA&amp;quot; Text=&amp;quot;Massachusetts&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;MI&amp;quot; Text=&amp;quot;Michigan&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;MN&amp;quot; Text=&amp;quot;Minnesota&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;MS&amp;quot; Text=&amp;quot;Mississippi&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;MO&amp;quot; Text=&amp;quot;Missouri&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;MT&amp;quot; Text=&amp;quot;Montana&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;NE&amp;quot; Text=&amp;quot;Nebraska&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;NV&amp;quot; Text=&amp;quot;Nevada&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;NH&amp;quot; Text=&amp;quot;New Hampshire&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;NJ&amp;quot; Text=&amp;quot;New Jersey&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;NM&amp;quot; Text=&amp;quot;New Mexico&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;NY&amp;quot; Text=&amp;quot;New York&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;NC&amp;quot; Text=&amp;quot;North Carolina&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;ND&amp;quot; Text=&amp;quot;North Dakota&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;OH&amp;quot; Text=&amp;quot;Ohio&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;OK&amp;quot; Text=&amp;quot;Oklahoma&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;OR&amp;quot; Text=&amp;quot;Oregon&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;PA&amp;quot; Text=&amp;quot;Pennsylvania&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;RI&amp;quot; Text=&amp;quot;Rhode Island&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;SC&amp;quot; Text=&amp;quot;South Carolina&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;SD&amp;quot; Text=&amp;quot;South Dakota&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;TN&amp;quot; Text=&amp;quot;Tennessee&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;TX&amp;quot; Text=&amp;quot;Texas&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;UT&amp;quot; Text=&amp;quot;Utah&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;VT&amp;quot; Text=&amp;quot;Vermont&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;VA&amp;quot; Text=&amp;quot;Virginia&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;WA&amp;quot; Text=&amp;quot;Washington&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;WV&amp;quot; Text=&amp;quot;West Virginia&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;WI&amp;quot; Text=&amp;quot;Wisconsin&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;asp:ListItem Value=&amp;quot;WY&amp;quot; Text=&amp;quot;Wyoming&amp;quot;&amp;gt;&amp;lt;/asp:ListItem&amp;gt;&lt;br/&gt;&amp;lt;/asp:DropDownList&amp;gt; &lt;br /&gt;&lt;/blockquote&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>скругляем углы кроссбраузерно</title><link>http://webmaster-notes.blogspot.com/2011/05/blog-post.html</link><category>border-radius</category><category>css3</category><category>ie</category><category>pie</category><author>noreply@blogger.com (Victoria)</author><pubDate>Wed, 11 May 2011 15:19:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-1053270858388214636</guid><description>Вопрос, волнующий, наверно, всех начинающих верстальщиков. Как скруглить углы любому элементу веб-страницы кроссбраузерно?&lt;br /&gt;&lt;br /&gt;К всеобщему счастью, на данный момент почти все браузеры понимают свойство css3 &lt;span style="font-style:italic;"&gt;border-radius&lt;/span&gt;. К всеобщему сожалению, нам до сих пор приходится поддерживать IE 7 и 8 версии, которые, понятное дело, таких вещей не понимают. Выход - использовать плагин, который нам поможет. &lt;br /&gt;&lt;br /&gt;Я использую &lt;a href="http://css3pie.com/"&gt;PIE&lt;/a&gt;. Из всех плагинов, которые я нашла, PIE единственный, который у меня корректно работает. Он, кстати, умеет не только углы скруглять, но и добавлять в IE свойства &lt;span style="font-style:italic;"&gt;box-shadow&lt;/span&gt; и &lt;span style="font-style:italic;"&gt;linear-gradient.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Итак, качаем файл PIE.htc с &lt;a href="http://css3pie.com/"&gt;css3pie.com&lt;/a&gt;. В css пишем:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-weight:bold;"&gt;.element {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;-moz-border-radius:8px;&lt;/span&gt;  &lt;span style="font-style:italic;"&gt;//для старых версий FF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;border-radius:8px; &lt;/span&gt;&lt;span style="font-style:italic;"&gt;//css3 для всех современных браузеров&lt;/span&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;behavior:url('PIE.htc');&lt;/span&gt; &lt;span style="font-style:italic;"&gt;//путь к файлу PIE.htc для IE 7-8&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;}&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;всё :)</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>удивительная Opera</title><link>http://webmaster-notes.blogspot.com/2011/05/opera.html</link><category>javascript</category><category>opera</category><category>submit</category><author>noreply@blogger.com (Victoria)</author><pubDate>Wed, 4 May 2011 23:59:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-4877382729765922912</guid><description>Три дня ломала голову, почему во всех браузерах скрипт работает, а в Опере нет. По нажатию на кнопку javascript должен был вызывать определенный серверный метод. Везде отрабатывало, а в опере почему-то перезагружалась страница, но метод не вызывался. &lt;br /&gt;&lt;br /&gt;Сначала думала, что событие onmousedown в опере как-то специфически работает, потом думала, что javascript как-то не так к странице подключен....&lt;br /&gt;&lt;br /&gt;Оказалось всё гораздо проще. Функция, которую я пыталась вызвать, называлась &lt;span style="font-weight:bold;"&gt;submit&lt;/span&gt;. А в опере submit отправляет форму на сервер, и свою функцию так называть нельзя... &lt;br /&gt;Переименовала функцию в submitData, и - о чудо - всё работает :)</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></item><item><title>дежурная запись</title><link>http://webmaster-notes.blogspot.com/2011/05/note.html</link><author>noreply@blogger.com (Victoria)</author><pubDate>Wed, 4 May 2011 04:53:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4772668145455403233.post-5293412773419924986</guid><description>Год назад начала заниматься версткой и веб-разработкой. В этом блоге я буду писать о том, что нового интересного я узнала по работе.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item></channel></rss>