spanset () не работает должным образом с IE7 - PullRequest
0 голосов
/ 20 июля 2011

Я использую самую последнюю версию jquery и создаю для него тематический список флажков.

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

Это действительно не очень хорошая вещь, тем более что эти радиоприемники расположены довольно далеко внизу страницы с полосой прокрутки, можете ли вы представить себе пользователей, которыехотите выбрать 60 вариантов?Необходимость прокручивать вниз каждый раз?

Я буквально не использую ничего, кроме этого, для своих радиостанций:

$(".prettyme br").replaceWith(''); //fix RadioButtonList Bug
$(".prettyme").buttonset();

Вы можете увидеть живую версию моей ошибки по адресу: http://www.apff.org/fr/inscriptions.aspx?i=18

Используйте IE7, прокрутите вниз и нажмите одну из множества кнопок-флажков с буквой C перед номером.

Я знаю, что это связано с диапазоном, расположенным внутри метки, создающей кнопкуimage, если я прикреплю событие click к одному из этих диапазонов и заставлю его возвращать false, я больше не получу такого поведения (однако, при этом не будет установлен флажок и снята отметка с щелчка по метке)

Какостановить это адское поведение Jquery?

1 Ответ

0 голосов
/ 22 мая 2012

Я исправил эту ошибку, сохранив положение полосы прокрутки до нажатия кнопки и позже переместив полосу прокрутки в исходное положение.

/*
 * The code below fixes a bug in Internet Explorer.
 * The bug happens when a gender button is being clicked,
 *  and scrolls the page down.
 * Don't replace it by 'return false' or 'preventDefault()',
 *  it will prevent the radio button from being selected.
 */
$('.ui-button').live("click", function(event) {
  // save the vertical scrolling bar's position
  scrollTop = $(window).scrollTop();

  $('.box_radio').click(function(){
    // bring the scrolling bar at its initial position
    if (scrollTop)
      $(window).scrollTop(scrollTop);
    scrollTop = false;
  });
});

box_radio является родительским элементом кнопки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...