Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2010.03.14;
Скачать: [xml.tar.bz2];

Вниз

JScript кроссбраузерность   Найти похожие ветки 

 
stas ©   (2009-12-14 14:43) [0]

Кто знает помогите пожалуйста с Jscript, работает только в IE, а нужно еще  в опере и FF.
есть функция     window.onload = function onwl (value)  {...}
На onLoad она работает, а по вызову кнопкой нет, вызываю так:
Event.add(Button1, "click", function(e) { onwl ("параметр") })
Event - нашел библиотеку тут http://javascript.ru/tutorial/events/crossbrowser
Если в обработчик кнопки впишу alert, то работает.


 
stas ©   (2009-12-14 14:45) [1]

А в FF и alert неработает...


 
Wagner   (2009-12-14 14:50) [2]

Для того, чтобы ответить на этот вопрос, нужно знать, где вызывается строчка с Event.add.
Вообще, зачем усложнять? Просто пропиши onwl("параметр") в onclick кнопки, если конечно он не динамически создается.


 
stas ©   (2009-12-14 14:53) [3]

Не не динамечески, да я уже и так писал  - неработает.
т.е. если не динамически, то толку от Event.add  нет?


 
stas ©   (2009-12-14 14:54) [4]

А вызываю сразу по порядку
window.onload = function onwl (value)  {...}
потом этот оъект Event
и тут же
Event.add(Button1, "click", function(e) { onwl ("параметр") })


 
xayam ©   (2009-12-14 14:55) [5]

а jquery чем не устраивает. Подключаешь библиотеку, и пишешь что-то типа:

$("#id_button").click(function(e) {
  //обработка события
});


 
Wagner   (2009-12-14 14:56) [6]

stas ©   (14.12.09 14:54) [4]

Значит, ты где-то ошибся. Открой Firefox Error Console и посмотри, что она говорит при загрузке страницы и клике по кнопке.


 
stas ©   (2009-12-14 15:14) [7]

xayam ©   (14.12.09 14:55) [5]
Да меня все устраивает, просто я неособо силен в JScript.
JQuery где взять?

Wagner   (14.12.09 14:56) [6]
ага, сейчас гляну.


 
xayam ©   (2009-12-14 15:19) [8]


> stas ©   (14.12.09 15:14) [7]
> xayam ©   (14.12.09 14:55) [5]
> Да меня все устраивает, просто я не особо силен в JScript.
> JQuery где взять?

наверное и в поиске не силен :) jquery.com (библиотека) или jqueryui.com (библиотека + визуальные компоненты)


 
stas ©   (2009-12-14 16:45) [9]

Wagner   (14.12.09 14:56) [6]
пишет такую ошибку (Ошибка: onwl is not defined), если делаю так:

function Button1_onclick() {
onwl ("проверка")
}


 
Некто умный   (2009-12-14 20:13) [10]

Нафига писать, если не разбираешься, как и что? Учебник тебе поможет.


 
stas ©   (2009-12-15 20:46) [11]

Некто умный   (14.12.09 20:13) [10]
ох ты епт. Если ответить нечего, то не флуди.
А чего ник сменил?

с этим разобрался...
stas ©   (14.12.09 16:45) [9]

Теперь следующий вопрос:

вобщем есть функция
function onwl (value)  {}
window.onload = function() { onwl (null) }
function Button1_onclick() {
onwl (Text1.value)
}


и есть див.

<div> <input id="Text1" type="text" style="width: 377px"/>
<input id="Button1" type="button" value="Кнопка" language="javascript" onclick="return Button1_onclick()" />
</div>


при нажатии на кнопку в FF - ошибка (опера, IE работает)
Ошибка: Text1 is not defined


 
М. Береговой   (2009-12-15 23:08) [12]

Правильно назначать обработчики событий в js надо так:
function init(){};
function _over(){};
function _out(){};

var doc = document; //вместо document может быть любой элемент и div и button
   if (doc.addEventListener) { //для Всех остальных
       doc.addEventListener("mouseover", _over, false);
       doc.addEventListener("mouseout", _out, false);
       window.addEventListener("load", init, false);
   } else if (doc.attachEvent) { //для IE
       doc.attachEvent("onmouseover", _over);
       doc.attachEvent("onmouseout", _out);
       window.attachEvent("onload", init);
   } else {//для Всех остальных
       doc.onmouseover = _over;
       doc.onmouseout = _out;
       window.onload = init;
   }

Если ругается на функцию onwl, то значит ошибка в коде внутри функции.


 
М. Береговой   (2009-12-15 23:20) [13]

onwl (Text1.value)
Лучше делать так :
onwl (if(document.getElementById("Text1")) document.getElementById("Text1").value)


 
clickmaker ©   (2009-12-16 11:32) [14]

еще лучше так
var e = document.getElementById("Text1");
if (e) onwl(e.value);

либо document.forms[0].Text1, если там форма есть, конечно


 
stas ©   (2009-12-23 14:18) [15]

Спасибо! сейчас буду пробовать.


 
Palladin ©   (2009-12-23 20:39) [16]

2014 год:
Спасибо! Получилось!


 
Wagner   (2009-12-24 08:40) [17]

stas ©   (15.12.09 20:46) [11]

>А чего ник сменил?

Если вы имеете в виду меня, то смею вас разочаровать, появляюсь я здесь довольно редко, кроме того, не использую кириллические ники и стараюсь использовать один ник в треде.
С наступающим.


 
stas ©   (2009-12-24 12:25) [18]

Palladin ©   (23.12.09 20:39) [16]
))
в 2012 должен помешать конец света.

Wagner   (24.12.09 08:40) [17]
Нет вас я не имел ввиду. Просто чел явно сменил себе ник.
Спасибо за помощь.
С праздниками !


 
stas ©   (2009-12-25 19:30) [19]

Хоть 2014 еще не наступил...
Спасибо! Получилось!
)))
Всех С Новым годом!!!



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2010.03.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.006 c
2-1263335599
AntonioBanderas
2010-01-13 01:33
2010.03.14
Формат строки


1-1240190350
chipper
2009-04-20 05:19
2010.03.14
Справка


2-1263241082
batya15
2010-01-11 23:18
2010.03.14
Обложка альбома + mp3


11-1212167928
andreil
2008-05-30 21:18
2010.03.14
Кривое отображение модальной формы :(


15-1261951564
Германн
2009-12-28 01:06
2010.03.14
IP адрес 0.0.0.0





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский