Jump to content

Скрипт не работает в Opera


ser-yoga
 Share

Recommended Posts

2ZoNT

Пояснню:

"мужчина" - это то, как нас воспринимают женщины и голубые.

"мужик" (в смысле "не баба истеричная", "не тряпка") - это то, как я хотел бы, что-бы воспринимали меня.

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

Link to comment
Share on other sites

  • Replies 419
  • Created
  • Last Reply

Top Posters In This Topic

У Вас, на мой взгляд, такое же предвзятое отношение к Opera, как у других к IE.

В отношении javascript-a (если включить туда же BOM/DOM и т.п. и не считать последние пару лет) Опера всегда была самой непредсказуемой и фиче-неподдерживающей при самом быстром (за исключеним некоторых мест) движке. К тому же никак это не документировала, чем ещ? больше осложняла жизнь js-программисту. И в том, что у человека (про которого, кстати, тут все уже забыли) не заработал в Опере этот архаичный скрипт, виновата в какой-то степени и сама Опера... :)

Link to comment
Share on other sites

А если я пришлю работающий (в IE) такой магазин. (Прототип для Вашего.) Задача станет много легче. (Задача, которая хорошо поставленна, тем более - уже решонная кем-то, на половину решена.) Тогда - возьм?тесь?

Вам нужен сотрудник, который реализует кросcплатформенность вашего софта?

Link to comment
Share on other sites

В отношении javascript-a (если включить туда же BOM/DOM и т.п. и не считать последние пару лет) Опера всегда была самой непредсказуемой и фиче-неподдерживающей при самом быстром (за исключеним некоторых мест) движке. К тому же никак это не документировала, чем ещ? больше осложняла жизнь js-программисту.

Да, как-то не так высказался. Отчасти из-за того, что не вижу, как и многие другие, дальше этой пары-тройки лет (лишь по наслышке знаком с жутким прошлым браузеров), очасти из-за слишком эмоциональных высказываний Алекcа.

...виновата в какой-то степени и сама Опера...

Мне все-таки ближе ваше: "Мало, кто пишет скрипты на 10 лет впер?д" (при этом не могу отрицать последнее).

Link to comment
Share on other sites

AKS,

когда homm and zoNT настойчиво тут разъясняют "идиотам", что скрипт "написан так, чтобы он ничего не делал в Опере (и других браузерах, кроме ИЕ и мозиллы)" - это конечно же неправда, этот скрипт может работать или не работать в любом из браузеров. Почему он не работает у задавшего вопрос в Опере и чья тут вина решайте сами. :)

Link to comment
Share on other sites

if (ns3up || ie4up) {
imgOn = ("" + imgName);
document.mainpic.src = imgOn;
}

Переводу на русский (для Zeroglif`а): Если (браузер "Нэтскейп" версии 3 или выше ИЛИ браузер "ИЕ" версии 4 или выше) , то {что-то делаем}

При таком условии другие браузеры просто НИЧЕГО НЕ ДЕЛАЮТ, а ие и нэтскейп - делают!

Link to comment
Share on other sites

Переводу на русский (для Zeroglif`а)

Гы. Подвигаю-ка я особо настойчивых в правильном направлении:

1) Является ли значение свойства 'appName' однозначным идентификатором конкретного браузера?

2) Каким было это значение у Оперы во времена, когда был написан этот скрипт (где-то 1999-2000гг.)?

3) Может ли пользователь современной Оперы самостоятельно менять значение 'appName' в настройках?

4) Могут ли пользователи других браузеров самостоятельно менять значение 'appName'?

Ответы на эти вопросы должны привести к правильному пониманию скрипта. Если понимание не прид?т, то прид?тся мне выкладывать алерты, свидетельствующие о том, что и современная Опера этот скрипт обработает, и тем более Опера врем?н написания скрипта, допустим, какая-нибудь 3.60... :)

Link to comment
Share on other sites

Это при условии что пользователь заменит идентификацию браузера!!! Данный пример мы не рассматриваем, как и то, что данная страница будет отобрадаться в каком-нибудь экзотическом софте с возможностью подмены всего, что только можно. Согласитесь, что большинство пользователей не меняют настроек браузера (они не знают как это сделать).

Link to comment
Share on other sites

На ориентировочный момент написания скрипта Опера по дефолту представлялась как "Netscape", заодно и "Microsoft Internet Explorer". Так что программист, названный тут имбецилом, вообще не отсекал Оперу, и скрипт прекрасно работал, как бы вы его тут не переводили на свой язык. Сегодня куча браузеров разрешает трогать свои "идентифицирующие" строки, другая куча народу этим пользуется, спуфят чего не попадя, а тем более достаточно продвинутые пользователи Оперы. Поэтому любой скрипт для незнакомой среды, базирующийся на строках агентов (UA), по сути может работать или не работать с любым браузером. Наличие строк однозначно говорит только о наличие строк и ни о ч?м больше. :)

Link to comment
Share on other sites

Пользуюсь оперой несколько лет (но сейчас переш?л на фаерфокс) - ни разу не менял строку... Зачем??? Если стоит проверка на браузер - значит сайт сделан фигово... Я на такие сайты просто забиваю - есть множество других, которые предложат то же самое, но в любом браузере.

Link to comment
Share on other sites

Пользуюсь оперой несколько лет (но сейчас переш?л на фаерфокс) - ни разу не менял строку... Зачем???

Вы не меняли, за вас Опера меняла, не спросясь. Имеет полное право. А тому, который меняет, личный опыт того, который не меняет, поможет слабо. :)

Я на такие сайты просто забиваю - есть множество других, которые предложат то же самое, но в любом браузере.

Сомневаюсь, что забиваете. Вы по таким сайтам ходите каждый день. :)

Link to comment
Share on other sites

2AKS

>Вам нужен сотрудник, который реализует кросcплатформенность вашего софта?

Нет. Спрашиваю потому, что уверен: сделать не сможете. Написать современный сайт для Оперы невозможно, так же, как для китайского калькулятора. И так будет всегда, потому, что бесплатно хорошо не бывает.

Простите мне мою эмоциональность. Я просто не могу понять, что заставляет ставить Оперу на виндусовый компьютер. На Linux - понятно. Под винды зачем? (Вы тоже мне не ответили.)

Юношу спрашиваю: Зачем поставил? Опера лучше, говорит. (Как он это понял, если ХТМЛ не знает? Загадка.) Вы знаете заведомо больше, но тоже не говорите.

Хорошо, забыли...

Уважаемый AKS, у меня есть ещ? один вопрос. Я слышал, что в CSS Оперы можно писать так (в IE это можно):

TD{

color:red;

onmouseup: funcUp;

onmousedown: funcDown;

}

где funcUp и funcDown javascript-овые функции.

Так ли это, и нельзя ли об это где-то вычитать. Если Вас это не затруднит, ответьте мне, пожалуйста.

Link to comment
Share on other sites

2AKS

Я отчасти наврал. (От части!) В IE такой возможности тоже нет. Но?

Согласитесь: странно, что такой возможности нет в современных браузерах. Действительно, в CSS представлены свойства тегов, и логично было бы разместить там и методы, изменяющие эти свойства. (Согласно современным ООП взглядам на методы программирования.)

Зачем? Приведу пример, где это ярко проявляется.

Представьте себе, что вам нужно реализовать калькулятор, или симулировать клавиатуру посредством DHTML. (Ячейка таблицы, тег TD, кнопка на клавиатуре.) Если иметь возможность прописывать в CSS реакцию тегов(кнопок) на мышиные события, то это как раз займет две строки, которые я вам прислал.

А если такой возможности нет, то Вам, скорее всего, придется прописывать эту реакцию для каждой кнопки. (А их, кнопок на клавиатуре, 101.)

В IE тоже нет такой возможности, но программист, который этот браузер создал, гений! IE настолько гибок, что он позволяет нам вносить изменения в DOM посредством JScript.

Я написал небольшой (меньше 700 байт) скрипт, ещ? 2003 году, который исправляет этот недостаток IE.

http://people.nnov.ru/master/DCSS/DCSS.1.1....2004-03-30.rar (Объ?м 10К с примерами.)

Я это не чтоб похвастать. Для Оперы такой скрипт написать сможете? Пусть не Вы, AKS. Пусть другой.

Да? Кстати, тут какой-то умник идиотом меня называл. Давай, умник, покажи народу класс. Ты же такой умный.

Link to comment
Share on other sites

Если иметь возможность прописывать в CSS реакцию тегов(кнопок) на мышиные события, то это как раз займет две строки, которые я вам прислал.

Так ведь в таблице стилей указывают правила для объекта style узлов документа.

А если такой возможности нет, то Вам, скорее всего, придется прописывать эту реакцию для каждой кнопки. (А их, кнопок на клавиатуре, 101.)

Для каждой кнопки необязательно. Можно обойтись одним обработчиком событий, который будет работать со свойствами объекта Event.

Link to comment
Share on other sites

Действительно, в CSS представлены свойства тегов, и логично было бы разместить там и методы, изменяющие эти свойства.

У тебя мягко говоря в корне не верное представление о css.

В IE тоже нет такой возможности, но программист, который этот браузер создал, гений!

Наконец-то ты признаешь, что я гений, ха-ха!

<div id="calc">
<button>1</button>
<button>2</button>
<button>3</button>
</div>
<script type="text/javascript">
$("#calc button").click(function () {
alert(this.innerText);
});
</script>

IE настолько гибок, что он позволяет нам вносить изменения в DOM посредством JScript.

Уму не постижимо!!!!!

Link to comment
Share on other sites

Код алекса:

.edit{
border-width:2; /* есть рамка */
onmouseout:e2v; /* смена класса edit на view */
}
.view{
border-width:0; /* нет рамки */
onmouseover:v2e; /* смена класса view на edit */
}

Потрясающе! Я давно о таком мечтал! Никогда не видел ничего подобного! Просто нет слов!

В браузерах (ИЕ конечно не браузер) это называется ?:hover? и работает на чистом css без всякого js-гона уже лет пять наверное.

И про это почти все примеры. И человек действительно считает, что открыл Америку :)

Link to comment
Share on other sites

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

Link to comment
Share on other sites

2AKS

>Так ведь в таблице стилей указывают правила для объекта style узлов документа.

Извините, я это не понял. (Я был уверен, что в CSS описывабт статические свойства узлов документа. Я неправ?)

>Для каждой кнопки необязательно. Можно обойтись одним обработчиком событий, который будет работать со свойствами объекта Event.

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

Прочитайте readme.txt и посмотрите примеры. Могое станет, может быть, понятнее. Будут вопросы, я - тут.

С уважением.

Link to comment
Share on other sites

2yopopt

>Что Вы понимаете под "современный сайт"?

Вопрос очень интересный. Целая тема для дискуссий.

Задумайтесь над таким вопросом: PHP - генератор HTML, и генерит HTML на стороне сервера. А зачем генерить HTML на сервере, если это можно сделать в браузере, у клиента.

Посмотрите, как работает корзина покупателя тут:

http://people.nnov.ru/master/Omron/

На PHP такую не напишешь.

Та же история с SQL.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy