Кросс-браузерная несовместимость?(JQuery) - PullRequest
0 голосов
/ 21 декабря 2011

Я ни в коем случае не интернет-гуру, однако мне очень нравится возиться с инструментами.Одним из моих последних инструментов был «расширенный» поиск по бюллетеню vb, они отключили некоторые параметры поиска.Я написал и протестировал в Google Chrome, работает отлично.Я не могу понять, почему он не будет работать в FF или IE.

Помещение: эта страница принимает ваш запрос и параметры поиска, форматирует URL-адрес и открывает его в новом окне.

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

Страница: http://advlolsearch.herobo.com/

JS: http://advlolsearch.herobo.com/js/page.js

CSS:http://advlolsearch.herobo.com/css/mystyle.css

Решено: Heyooooooo!Я нашел проблему.Мне нужно было поменять:

$(".button").click(function() {
    var ID = event.target.id

на

$(".button").click(function(event) {
    var ID = event.target.id

Хром понял, что я делаю, но FF хотел сойти с ума от меня.Спасибо всем за помощь.Оставьте это открытым, потому что у меня есть несколько текущих вопросов в комментариях.

1 Ответ

1 голос
/ 21 декабря 2011

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

...
if (val=="forum") {
    var selectedforum = $('#select').val();
    var searchby = $('input:radio[name=search]:checked').val();
    var showas = $('input:radio[name=show]:checked').val();
    var dataLookup = {
        na: {
            all: [],
            np: [29],
            tg: [29],
            mm: [48,49,43],
            sr: [48],
            tw: [49],
            dm: [43],
            ll: [9,2,16,41,23,15,20,32]
            // ... put the rest here
        },
        euw: {
            all: [],
            np: [4]
            // rest of the data here
        },
        eune: {
            all: [],
            np: [4]
            // rest of the data here
        }
    };
    if (region in dataLookup) {
        var data = dataLookup[region];
        if (selectedForum in data) {
            fID = "";
            for (var i = 0; i < data[selectedForum].length; i++) {
                fID += "&forumchoice[]=" + data[selectedForum][i];
            }
            var theURL = "http://" + region + ".leagueoflegends.com/board/search.php?do=process&query=" + query + fID + "&titleonly=" + searchby + "&showposts=" + showas;
            theURl = theURL.replace(' ','%20');
            window.open(theURL);
        }
    }
} else if ...
...