Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/26: Рейтинг темы: голосов - 26, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9

Не пашет jQuery скрипт в браузерах Opera и FireFox

05.11.2010, 06:43. Показов 5345. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Проблема в следующем.

Не пашет скрипт в браузерах Opera и FireFox, а вот в Internet Explorer'е работает на ура!

После нажатия на кнопку страница полностью перезагружается и полностью всё исчезает. Но переменная успешно передаётся php скрипту.

Вот сам скрипт на jQuery:

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
jQuery.fn.rater = function(url, options)
{
    if(url == null) return;
    var settings = {
  url       : url, // post changes to 
  maxvalue  : 5,   // max number of stars
  curvalue  : 0    // number of selected stars
    };
    
    if(options) { jQuery.extend(settings, options); };
    jQuery.extend(settings, {cancel: (settings.maxvalue > 1) ? true : false});
    
    var container = jQuery(this);
    jQuery.extend(container, { averageRating: settings.curvalue, url: settings.url });
 
    if(!settings.style || settings.style == null || settings.style == 'basic') {
  var raterwidth = settings.maxvalue * 25;
  var ratingparent = '<ul class="star-rating" style="width:'+raterwidth+'px">';
    }
    if(settings.style == 'small') {
  var raterwidth = settings.maxvalue * 10;
  var ratingparent = '<ul class="star-rating small-star" style="width:'+raterwidth+'px">';
    }
    if(settings.style == 'inline') {
  var raterwidth = settings.maxvalue * 10;
  var ratingparent = '<span class="inline-rating"><ul class="star-rating small-star" style="width:'+raterwidth+'px">';
    }
    container.append(ratingparent);
    
    // create rater
    var starWidth, starIndex, listitems = '';
    var curvalueWidth = Math.floor(100 / settings.maxvalue * settings.curvalue);
    for(var i = 0; i <= settings.maxvalue; i++) {
  if (i == 0) {
    listitems+='<li class="current-rating" style="width:'+curvalueWidth+'%;">'+settings.curvalue+'/'+settings.maxvalue+'</li>';
  } else {
    starWidth = Math.floor(100 / settings.maxvalue * i);
    starIndex = (settings.maxvalue - i) + 2;
    listitems+='<li class="star"><a href="#'+i+'" title="'+i+'/'+settings.maxvalue +'" style="width:'+starWidth+'%;z-index:'+starIndex+'">'+i+'</a></li>';
  }
    }
    container.find('.star-rating').append(listitems); // i am using find here, because the span wrapped in the small style would break children()
 
    if(settings.maxvalue > 1) // add a container for the ajax result
    {
  container.append('<span class="star-rating-result"></span>'); 
    }
    var stars = jQuery(container).find('.star-rating').children('.star');
    stars.click(function()
    {
  if(settings.maxvalue == 1) // on / off
  {
    settings.curvalue = (settings.curvalue == 0) ? 1 : 0;
    jQuery(container).find('.star-rating').children('.current-rating').css({width:(settings.curvalue*100)+'%'});
    jQuery.post(container.url, { "rating": settings.curvalue });
    return false;
  }
  else
  {
    
    settings.curvalue = stars.index(this) + 1;
    raterValue = jQuery(this).children('a')[0].href.split('#')[1];
    jQuery.post(container.url, { "rating": raterValue }, function(response){
    container.children('.star-rating-result').html(response)    
    });
    return false;
  }
  return true;
    });
 
    return this; // strict warning: anonymous function does not always return a value. fix?
}
Вывожу с помощью

Code
1
2
3
4
5
6
7
<div id="rating"></div>
<script type="text/javascript">
jQuery.noConflict();
jQuery('#rating').rater('/скрипт.php', 
{maxvalue:10, style: 'basic', curvalue:0}
);
</script>
Есть подозрения что это CSS. Прошу помощи. Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.11.2010, 06:43
Ответы с готовыми решениями:

Почему этот скрипт в Internet Explorer работает, а в Opera и Firefox нет?
&lt;html&gt; &lt;head&gt;&lt;title&gt;&lt;/title&gt;&lt;/head&gt; &lt;body&gt; &lt;table id=&quot;mytab&quot;&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;script language=&quot;JavaScript&quot;...

Почему скрипт не работает в Chrome, а в Firefox и Opera работает?
Имеется обычный код JS, работающий в Firefox и Opera, но не работающий в Chrome. Кстати хотел ещё заметить, что alert() работает в...

Скрипт работает в Opera и Firefox, но не работает в IE
В чём может быть проблема? Данный код не работает в IE (у меня 6 версия). Может существуют другие способы решения данной задачи:...

12
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
05.11.2010, 10:00
Цитата Сообщение от EvgenJS Посмотреть сообщение
Есть подозрения что это CSS.
Покажите CSS.
0
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
05.11.2010, 11:21  [ТС]
Заливаю архив со всеми css, которые подключены.

rater.css - отвечает за сам плагин

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
.star-rating {
    BACKGROUND: url(../images/star.gif) repeat-x left -1000px
}
.star-rating A:hover {
    BACKGROUND: url(../images/star.gif) repeat-x left -1000px
}
.star-rating A:active {
    BACKGROUND: url(../images/star.gif) repeat-x left -1000px
}
.star-rating A:focus {
    BACKGROUND: url(../images/star.gif) repeat-x left -1000px
}
.star-rating .current-rating {
    BACKGROUND: url(../images/star.gif) repeat-x left -1000px
}
.star-rating {
    POSITION: relative; PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 125px; PADDING-RIGHT: 0px; BACKGROUND-POSITION: left top; HEIGHT: 25px; OVERFLOW: hidden; LIST-STYLE-IMAGE: none; PADDING-TOP: 0px
}
.star-rating LI {
    DISPLAY: inline
}
.star-rating A {
    BORDER-BOTTOM: medium none; POSITION: absolute; BORDER-LEFT: medium none; LINE-HEIGHT: 25px; TEXT-INDENT: -1000em; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; OUTLINE-WIDTH: medium; HEIGHT: 25px; OVERFLOW: hidden; BORDER-TOP: medium none; TOP: 0px; BORDER-RIGHT: medium none; LEFT: 0px
}
.star-rating .current-rating {
    BORDER-BOTTOM: medium none; POSITION: absolute; BORDER-LEFT: medium none; LINE-HEIGHT: 25px; TEXT-INDENT: -1000em; OUTLINE-STYLE: none; OUTLINE-COLOR: invert; OUTLINE-WIDTH: medium; HEIGHT: 25px; OVERFLOW: hidden; BORDER-TOP: medium none; TOP: 0px; BORDER-RIGHT: medium none; LEFT: 0px
}
.star-rating A:hover {
    BACKGROUND-POSITION: left bottom
}
.star-rating A:active {
    BACKGROUND-POSITION: left bottom
}
.star-rating A:focus {
    BACKGROUND-POSITION: left bottom
}
.star-rating .current-rating {
    Z-INDEX: 1; BACKGROUND-POSITION: left center
}
.inline-rating {
    DISPLAY: inline-block; VERTICAL-ALIGN: middle
}
.small-star {
    WIDTH: 50px; HEIGHT: 10px
}
.small-star {
    BACKGROUND-IMAGE: url(../images/star_small.gif); LINE-HEIGHT: 10px; HEIGHT: 10px
}
.small-star A:hover {
    BACKGROUND-IMAGE: url(../images/star_small.gif); LINE-HEIGHT: 10px; HEIGHT: 10px
}
.small-star A:active {
    BACKGROUND-IMAGE: url(../images/star_small.gif); LINE-HEIGHT: 10px; HEIGHT: 10px
}
.small-star A:focus {
    BACKGROUND-IMAGE: url(../images/star_small.gif); LINE-HEIGHT: 10px; HEIGHT: 10px
}
.small-star .current-rating {
    BACKGROUND-IMAGE: url(../images/star_small.gif); LINE-HEIGHT: 10px; HEIGHT: 10px
}
Вложения
Тип файла: rar style.rar (8.9 Кб, 8 просмотров)
0
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
05.11.2010, 11:52
Все оказалось намного проще:
HTML5
1
2
3
4
5
6
7
8
9
<script type="text/javascript">
    jQuery.noConflict();
    jQuery(function(){
        jQuery('#rating').rater(
            '/скрипт.php', 
            {maxvalue:10, style: 'basic', curvalue:0}
        );
    });
</script>
1
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
05.11.2010, 12:40  [ТС]
Дописал так, как вы написали, но неисправность всё равно осталась... всё таки тут не всё так просто...
0
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
05.11.2010, 12:59
Цитата Сообщение от EvgenJS Посмотреть сообщение
Дописал так, как вы написали, но неисправность всё равно осталась...
Я проверил в Opera, IE, Firefox и Chrome - все отлично работает.
Цитата Сообщение от EvgenJS Посмотреть сообщение
осле нажатия на кнопку страница полностью перезагружается и полностью всё исчезает.
Меня смущает тот факт, что страница у вас перезагружается. У меня работает как надо - без перезагрузки.

Добавлено через 2 минуты
Кстати, CSS не при чем - конфликтов нет.
1
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
05.11.2010, 13:02  [ТС]
хм, когда проверил скрипт отдельно на другой странице чистой, то всё нормально... А на другой вот такая беда(( Если css и js тут не причём... какие могут быть варианты?

пс если быть точнее, то страница не перезагружается, а верстка полностью исчезает и всё пропадает.
0
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
05.11.2010, 13:14
Цитата Сообщение от EvgenJS Посмотреть сообщение
Если css и js тут не причём...
Про JS я не говорил...

На всякий случай, посмотрите на свой фрагмент js и между 63-ей и 64-ой строками вставьте:
JavaScript
1
alert(response);
Появится ли сообщение?
0
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
05.11.2010, 13:20  [ТС]
в IE и Opera сообщение появляется, в Firefox без изменений...
0
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
05.11.2010, 13:37
Цитата Сообщение от EvgenJS Посмотреть сообщение
в IE и Opera сообщение появляется
В Опере, значит, работает?
0
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
05.11.2010, 13:39  [ТС]
Цитата Сообщение от ostgals Посмотреть сообщение
В Опере, значит, работает?
нет.. после нажатия пустой белый экран..
0
 Аватар для ostgals
886 / 681 / 101
Регистрация: 23.01.2009
Сообщений: 1,582
05.11.2010, 13:41
А полный вариант страницы с проблемой можно где-то посмотреть? На хостинге, например.
1
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
05.11.2010, 13:45  [ТС]
отправил ссылку в пм
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.11.2010, 13:45
Помогаю со студенческими работами здесь

Шрифт google не пашет в Opera
Всем привет! Выручайте!Сделал страничку и не пойму, почему в опере не отображается шрифт с гугла, везде нармально а в ней нет! Вроде все в...

Chrome vs Opera vs Firefox
Нужен браузер, потребляющий мало оперативной памяти, функциональный и самый-самый. Выбор из Хрома, Лисы и Оперы. Ответы попрошу обосновать.

JS не работает в Mozilla Firefox и Opera
Пишу сайт, по идее шапка сайта должна плавно исчезать и появляться новая, в Хроме и Сафари,даже в IE всё прекрасно работает,но в MozFirefox...

Открытие сайта Opera,firefox и т.д
Хочу узнать как чтобы при нажатие на сылку в моей проге то у них открывался не explorer Стандартный а Opera или FierFox Самые...

Кроссбраузерность (Firefox / Opera / Chrome)
Приветствую всех пользователей. Я тут недавно и у меня есть очень серьезный вопрос. Я сверстал .PSD макет. У меня он отображается...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru