Проблема с разбором параметров jQuery - PullRequest
0 голосов
/ 20 декабря 2011

Я очень плохо знаком с jQuery, и у меня возникла проблема с разбором строкового значения для функции.

У меня есть:

    function callAreaData(area) {
        $("area[alt='" + area + "']").hover(function (e) {
            $("div#bodyPlace_popupA").show();
            $("area[alt='" + area + "']").hide();
        }, function () {
            $("div#bodyPlace_popupA").hide();
        });

        $("area[alt='" + area + "']").mousemove(function (e) {
            $("div#bodyPlace_popupA").css('top', e.pageY + moveDown).css('left', e.pageX + moveLeft);
        });
    }

и позвони в мой

     $(document).ready(function () {
          ...
          var a = "Area A";
          callAreaData(a);
          ...
     });

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

     function callAreaData() {
        $("area[alt='Area A']").hover(function () {
            $("div#bodyPlace_popupA").show();
            $("area[alt='Area A']").hide();
        }, function () {
            $("div#bodyPlace_popupA").hide();
        });

        $("area[alt='Area A']").mousemove(function (e) {
            $("div#bodyPlace_popupA").css('top', e.pageY + moveDown).css('left', e.pageX + moveLeft);
        });
    }

Это должно быть легко исправить, но я не вижу этого, поэтому помогите, пожалуйста?

Заранее спасибо, Питер

1 Ответ

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

Попробуйте что-то вроде:

$(document).ready(function() {
 var area = someArea; // get area from some hidden element 
 $("area[alt='" + area + "']").hover(function (e) {
            $("div#bodyPlace_popupA").show();
            $("area[alt='" + area + "']").hide();
        }, function () {
            $("div#bodyPlace_popupA").hide();
        });

        $("area[alt='" + area + "']").mousemove(function (e) {
            $("div#bodyPlace_popupA").css('top', e.pageY + moveDown).css('left', e.pageX + moveLeft);
        });


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