2011 18 февраля 2011

IE Javascript Ошибка: Объект не поддерживает это свойство или метод

Если бы этот странный вопрос, где кусок Javascript работало во всех браузер ANS как обычно IE бар :) Просто ... это было, но, поскольку сценарий был написан не мной, потребовалось некоторое время, чтобы отладить этот "Объект не поддерживает это свойство или метод" ошибки, которые только IE рвало. Возможно! Если бы я писал сценарий, я бы не получил эту ошибку на всех, а не смешивать мою имена переменных полей идентификаторов :).

Проблема: Объект не поддерживает это свойство или метод (в строке 3)

function funzoneSP(){ document.getElementById('video_id').style.visibility="hidden"; shortdesc = document.getElementById('shortdesc').value; .... } 

Решение:
Ошибка генерируется на thirdrow в приведенном выше примере (3 линии ... "shortdesc = document.getE ...."). Я перепробовал все рода глупости, что я не стоят даже упоминания здесь и, наконец, что вы думаете! просто изменив уаг shortdesc на что-то другое избавился от ошибки. Основном! Имя переменной был отличаться от fieldID


2009 24 марта 2009

Отключено = "истина" и инвалидам = "ложных" то же самое?

Это те, старые школы, но, как обычно, это моя память дополнения ...
Так отключено = "истина" и инвалидам = "ложных" то же самое? Да
... Не верю, хорошо! Thats, так оно и есть ... вот некоторые быстрые объяснение ...
"Отключено" является атрибутом любого элемента формы / поля и, следовательно, может принимать любые значения по своей природе.

Пока этот атрибут присутствует, элемент будет отключен независимо от его стоимости. например, для.
<input type="text" value="This является disabled" disabled>
<input type="text" value="This является disabled" disabled="disabled">
<input type="text" value="This является disabled" disabled="true">
<input type="text" value="This является disabled" disabled="false">

Все вышеперечисленное сделает это поле формы "Отключено".

Просто не предоставляет атрибут "DISABLED" держит в поле "инвалидами", как показано ниже ...

<input type="text" value="This не disabled" />

Помните, "любое значение (или значение не во всех) людей с ограниченными возможностями атрибут, браузер сделает его отключить». Для простоты в наших умах W3C рекомендует, что мы используем отключены = "инвалидов" в таких ситуациях.

Это различие, хотя, когда мы использовать этот атрибут в JavaScript ...

document.form.element.disabled = true; / / элемент будет отключена
document.form.element.disabled = False / / элемент будет включен

Приведенные выше рассуждения верны и для этих атрибутов и элементов:

  • проверить (переключатель и флажок)
  • выбран (опция)
  • NoWrap (TD)

2009 7 марта 2009

Вызов нескольких OnLoad для Windows функции в Javascript

Херес еще один маленький peice обмана Javascript, что мне пришлось копаться, потому что ситуация commaned он. В одном из моих веб-сайтов, у меня была ситуация, когда я должен был осуществлять "windows.onload" в два раза. Первое, что бы пришли к неопытный ум, как у меня (у меня честно сказать, что, поскольку я использую JavaScript рамки и библиотеки, я forgotton делать простые вещи, на мой собственный ... Печально, но факт), является следующий метод ...

 window.onload = onloadfn1;
 window.onload = onloadfn2;
 window.onload = onloadfn3;
 и т.д. ..

Извините, что говорю, но это не будет работать ... не хочу, чтобы обсудить выполнение науки Javascript много ... но по моим недавним опытом, только последняя функция (onloadfn3) будет плохо на самом деле будут выполняться.

В нормальной ситуации, в отличие от моей (о которых я расскажу немного позже) ... вы можете сделать одно из следующих действий, чтобы выполнить mutliple функции OnLoad ....

Или что-то вроде этого

 Функция doOnLoad () {
         onloadfn1 ();
         onloadfn2 ();
         onloadfn3 ();
 }
 window.onload = doOnLoad;

Для моей нынешней ситуации, я не могу использовать любой из указанных выше ...
Почему мне нужно позвонить windows.onload дважды, а что вызов двух функций в рамках одной функции OnLoad? Вот быстрый взгляд на мои постановки задачи ...

"Мои страницы сайта структурированы как тема WORDPRESS .... то есть общая header.php и footer.php, который получает включены во все страницы сайта. Существует implementaion OnLoad функции в footer.php, чтобы сделать некоторые общие функции OnLoad. И есть несколько страниц, которые должны что-то свое OnLoad, кроме тех, сделать общие функции OnLoad. Если я назначить функцию обратного вызова непосредственно на window.onload обработчик, он будет по-ехать ранее назначенного обратного вызова в footer.php "

.... Моя проблема понимается :) ?

Ну! Есть несколько решений, которые я нашел. Все они очень похожи, и главным образом implementions решения данной Саймон Willison ( http://simonwillison.net/2004/May/26/addLoadEvent/ ) ...

Решение:

Просто добавьте этот код JavaScript на сайте ...

 Функция addLoadEvent (функции) {
     уаг oldonload = window.onload;
     если (TypeOf window.onload! = 'функция') {
        window.onload = функция
     {} Другое
        window.onload = функция () {
            если (oldonload) {
                   oldonload ()
           }
           функции ()
        }
    }
 }

И называть его вместо обычного "windows.onload"

 addLoadEvent (FunctionToRunOnPageLoad);
 addLoadEvent (функция () {
 / * Больше кода, чтобы запустить на странице загрузки *
 }); 

Преимущества этот фрагмент кода ...
1. В первую очередь, это позволяет иметь несколько событий windows.onload, вызывается из отдельных частей кода, без overridding предыдущее определение
2. Это очень ненавязчиво. Это может быть помещен в файл с другими сценариями, либо в отдельном файле.
3. Это работает, даже если window.onload уже установлен.


2008 25 декабря 2008

Загрузка JavaScripts Динамически

Иногда, чтобы сохранить pageweight вниз ... мы разбили наши сценарии на фрагменты ... Эти фрагменты JavaScript может быть загружен как и в случае необходимости (по событию или по нажатию на ссылку или кнопку и т.д.).

Загрузка Javascripts динамично прост и довольно прямо вперед, как показано ниже ...

= “text/javascript” > <Сценарий тип = "текст / JavaScript">
Функция loadNewScript (источник) {
Var S = document.createElement ('сценария');
s.setAttribute («типа», «текст / JavaScript");
s.setAttribute («SRC», источник);
document.body.appendChild (ы);
}
</ SCRIPT>

и вы можете по следующей ссылке вызова в любую точку тела, или вы можете иметь этот сценарий "OnLoad" самого документа ...

= “javascript:loadNewScript('myDynamicScript.js');” >Load Dynamic Script</ a > <A HREF = "javascript: loadNewScript ('myDynamicScript.js');"> Load Динамический сценарий </ a>

или

<body onload="loadNewScript('myDynamicScript.js');">


2008 3 октября 2008

Простой, легкий, крест Lightbox браузер для веб-страницы

Не то, что есть только несколько LightBox о том, что можно найти, когда вы Google. Проблема с большинством лайтбоксы, что я обнаружил, что все они, казалось, использование одного или другого тяжелого веса JAVASCRIPT рамки как JQuery, Prototype, MooTools и любит. Это все здорово и шикарный вид. Но если ваше требование "Но я хочу простой и легкий LightBox SCRIPT на моем сайте", то здесь;

Некоторые интересные особенности этого Лайтбокс

  1. Очень легкий
    . 4kb скриптов, если они упакованы (8 кб без упаковки)
    б. 2 Кб CSS
    в. Несколько строк из HTML в избранное контейнер
  2. Простая для понимания и реализации
  3. Может иметь несколько лайтбоксы на той же странице.
  4. То же контейнер Лайтбокс используется, чтобы показать, различного содержания (которое отдельно включен в качестве скрытой подразделений на странице), в зависимости от ссылки / опция, которая была нажата.
  5. Автоматически центрируется, принимая во внимание все факторы, такие как высота и ширина окна (разрешение экрана), стр. прокрутки количество и высоту содержимого Лайтбокс
  6. Протестировано в IE 7 и FF

Посмотреть демо |
Скачать Lightbox Источник Zip (Скачано 1797 раз)


Использование Lightbox [Файлы архива]

jo.js, jo_pack.js [упакованы версия]: - простой набор объектов JavaScript [JO], который содержит элемент, окна и скрипты документ позиционирования. Вы можете открыть JO.JS, если вы хотите, чтобы ваши руки грязные с некоторыми Расширенный Javascripting, создание абстрактных функций, расширения свойств элемента и тому подобное. Если вы не слишком много в Javascripting, оставьте его в покое.

lightbox.js, lightbox_pack.js [упакованной версии]: - Содержат свет сценарии менеджер окна. Если вы разработчик страницы, а также ответственность с реализации избранное на странице, вы должны понимать, LightBoxManager. LightBoxManager в основном содержит только две функции showLightBox и closeLightBox.

lightbox.css: - Если вы знаете, CSS, вы можете поиграть с lightbox.css настроить внешний вид-н-чувствовать lightbox.css

index.html: Пример реализации лайтбокс с двумя разными содержание

lb_underlay_bkg.png: - Это свет / Сими прозрачное изображение, которое используется для фона подложки Лайтбокс [подложка является слой ниже lighbox, которая позволяет пользователю нажатием любой другой объект на странице, а лайтбокс открыта]. Вы можете использовать любое изображение или даже сплошной цвет для этой цели, в зависимости от дизайна и требований.

icon_lb_close.gif: - изображения для близких ручки лайтбокс на верхней правой части окна свет. Можно использовать любое изображение как в дизайне

Посмотреть демо |
Скачать Lightbox Источник Zip (Скачано 1797 раз)

Пожалуйста, дайте нам ваши комментарии и отзывы ...


2008 13 сентября 2008

JavaScript: Редактировать веб-страницы в браузере

Ну, надо сказать, не такая полезная часть науки, но если вы веб-разработчик, может пригодиться, когда-нибудь (или будет?). Вот небольшой букмарклет, который позволяет редактировать веб-страницы, для любого сайта.
А жаль! Вы можете сохранять результаты на локальном компьютере только.

JavaScript: document.body.contentEditable = 'истинный'; document.designMode = 'на'; недействительными 0


2008 2 сентября 2008

CSS хак: JavaScript, CSS, HTML для Firefox только

Много раз мы чувствуем потребность писать браузер specfic хаки (хотя это не очень хорошая практика, мы интерфейса разработчики вынуждены прибегать к такой беды, пока большой войны браузеров идет о перемирии). Ранее я упоминал в этой статье для вашего ИП только , как написать фрагмент CSS, которые были бы видны IE браузеров <IE7 только.

Вчера у меня был случай, когда я хотела написать FireFox конкретные фрагменты CSS. Ну! Я не уверен, если есть код CSS для этого, но есть HTML. Существует поймать, хотя, этот кусок HTML оленья кожа проверки проходят HTML. Но, anywaz! Если вы застряли или плохо, как такового, нет, что касается для проверки (иногда нужно быть жестоким), вы можете использовать следующие объявить ссылку на FF только стилей или даже просто код CSS внутри этого блока. Код

<comment> Поставьте FireFox только HTML / CSS / Scripts здесь </ комментарий>

например,
<comment>
<style>
/ * Стили для FF только * /
набор полей {границы: 1px твердых # dddddd;}
</ Стиль>
</ Комментарий>

Я "рад на данный момент ...


2008 1 сентября 2008

Удалить конкретный элемент из массива JavaScript, который соответствует переданной строки

Вот быстрый способ расширения родном массиве Javascript Object, только для этого ...

Array.prototype. removeItem =function(str) {
for(i=0; i<this.length ; i++){
if(escape(this[i]).match(escape(str.trim()))){
this.splice(i, 1); break;
}
}
return this;
}

Итак, теперь вы можете сделать что-то вроде этого ...

var animals= new Array("dog","lion","cat","tiger","elephant");
animals. removeItem ('tiger');

Теперь животные массив будет содержать "собака", "лев", "кошка", "Слон";

PS: А вот строки отделка Prototype тоже ...

String.prototype.trim=function(str) {
str = this != window? this : str;
return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}


Наслаждайтесь ....


2008 15 мая 2008

Передовой опыт: работа с JavaScript в

Включите JavaScript в в нижней части документа HTML

Если у вас нет document.write (или любой динамической генерации страниц содержимого с помощью сценариев JavaScript), чтобы вставить часть содержимого страницы в сценарии, переместить сценарий включает заявление в нижней части страницы, до конца BODY тег.
HTTP/1.1 спецификация предполагает, что браузеры скачать не более двух компонентов параллельно в имя хоста. Если вы служите изображения из нескольких хостов, вы можете получить более двух загрузок происходить параллельно. В то время как сценарий загрузки, однако, браузер не будет запускаться любые другие загрузки, даже на разные имена.
Существуют также способы динамически создавать SCRIPT узлов и загрузить удаленный скрипт после загрузки страницы с помощью AJAX.

Externalise вы в JavaScript

Использование внешних файлов JavaScript приведет к более быстрой загрузки страниц, поскольку JavaScript файлы кэшируются в браузере. "Встроенные JavaScript в HTML-документах получить скачали каждый раз, когда HTML-документа запросу. Это может действительно уменьшить количество запросов HTTP сделано, но впоследствии увеличивает размер HTML-документа. Внешний JavaScript являются кэше браузера, размер документа HTML уменьшается, не увеличивая число запросов HTTP.
Обратите внимание, что, если пользователи на вашем сайте есть несколько просмотров страниц за сеанс, и многие из ваших страниц повторно использовать те же скрипты и таблицы стилей, есть большая потенциальная выгода от кэшированные внешние файлы.

Пакет Ваши файлы Javascript

В случае JavaScripts, в отличие от CSS, файлы могут хрустел, используя некоторые стандартные алгоритмы, что даст уменьшение размера файла, чем просто удаление пробелов и табуляции. Пример JavaScript-упаковщик может быть найден здесь http://dean.edwards.name/packer/

Избавиться от любых повторяющихся сценариев

Это очень необычно, что весь скрипты могут быть дублированы, но обзор в десятку крупнейших американских сайтов показывает, что две из них содержат дублирует сценарий. Дубликат скриптов, но, очевидно, снижает производительность, создавая ненужные запросы HTTP и впустую JavaScript исполнения.
Кроме того, во многих случаях, хотя сценарии имена разные, есть вероятность сценариев-дубликатов в пределах одной страницы из-за размера команды и количество сценариев.

Свернуть доступ к DOM элементов, где возможно

Доступ к DOM элементов JavaScript медленно так, чтобы иметь более гибкую страницу, вы должны:
• Кэш ссылки на доступ к элементам
• Обновление узлов "автономном режиме", а затем добавить их в дерево
• Избегайте крепления макета с JavaScript

Отдельные поведения от содержания и представления

Так же, как отдельная презентация (CSS / XSLT) от содержимого (XHTML / XML), мы должны отделить поведения (JavaScript). Это называется ненавязчивый Javascript. Так же, как ссылки на внешние файлы CSS, мы должны ссылки на внешние файлы JavaScript.

Вместо жесткого кодирования поведения в содержание (например, OnMouseOver, OnClick и т.д.), поведение должно быть динамически добавлены элементы, классы и уникальные элементы (ID) с помощью DOM. Основополагающий документ, содержание, должно содержать только допустимые XHTML / XML и не JavaScript.
Javascript должны увеличить содержание, добавив поведения. Содержание должно оставаться полезным и использовать без JavaScript (или без полной поддержки JavaScript).


2008 15 марта 2008

Раздражает Выбор коробки видно через Popup отделы

В ряде случаев, при этом макеты страниц с всплывающее подразделений / лайтбоксы / Советы т.д. мы сталкиваемся с ситуациями, когда некоторые формы Выбор объектов оказывается в этих POPUP отделов, дизайн, и это показывает через .... YUK!

Ну! Вы можете легко исправить, регулируя Z-INDEX значения соответственно для FF и IE7. Но старые добрые (каламбур) IE6 ведет себя не по назначению .... Выберите Показать BOX конца, даже после установки некоторых радикально высокий Z-INDEX значений в PopUp отдела ... облом!!

Есть NO исправления этой проблемы, но есть, я думаю, больше, чем несколько дороге на работу, решить эту проблему, но им здесь, чтобы сказать вам простое решение, которое я использую, которое отлично работает для меня, в большинстве случаев ....

"СКРЫТЬ BOX ROUGE SELECT, когда вы показываете POPUP"

Просто в вашем скрипте фрагмент, где вы показываете ваши всплывающие окна, добавить кусочек сценария создать видимость окне Выбор "Невидимый"

document.getElementById ('my_select) style.visibilty = "скрытые".

И помните, чтобы установить его при закрытии всплывающих отдела

. document.getElementById ('my_select) style.visibilty = "видимый";

где "my_select" является идентификатором раздражение окне Выбор

Надеюсь, что это помогает ...

PS. Есть конечно же и другие варианты, как динамично positionining IFRAME (такой же размер, как вы PopUp) в Popup DIV ... Это тоже хорошо работает, но с добавлением нагрузок DOM элементы, скрипты и головная боль. Я использовал это решение тоже, и если вы нуждаетесь в какой-нибудь помощи с этой опцией, дайте мне знать. Будем рады помочь!


NDK дома | Выражая IT | Выражая неба | Выражая Penmenship | Выражая трепет | выразить себя