Использование jquery в фоновом контексте кроссрайдера

У меня есть следующий фрагмент кода в background.js.

appAPI.contextMenu.add("key2", "Add", function (data) {
var key=0;
alert('hi'+data.selectedText);
var tableRow = $("td").filter(function() {
            return $(this).text() == data.selectedText;
        }).closest("tr");

alert("1");         
alert(tableRow+'sds');
        if(tableRow===null)
        {
            alert("Please select proper text so that course can be selected, this would title or coursenumber");
            return;

        }   
        var title=tableRow.find('td').eq(7).text();
        var days=tableRow.find('td').eq(8).text();
        var time=tableRow.find('td').eq(9).text();
        timeSplit=time.split('-');
        var startTime,endTime;
        startTime=getTime(timeSplit[0]);           
        endTime=getTime(timeSplit[1]);
        var loc=tableRow.find('td').eq(10).text();
        var instructor=tableRow.find('td').eq(12).text();

        key=key+1;
        courseData=[{'id':key,'title':title,'days':days,'startTime':startTime,'endTime':endTime,'loc':loc,'instructor':instructor}];

        var dbData=appAPI.db.get('course_Data');
        if(dbData===null)
        {
            dbData=courseData;
        }
        else
        {
          dbData.push({'id':key,'title':title,'days':days,'startTime':startTime,'endTime':endTime,'loc':loc,'instructor':instructor});
        }
        alert(dbData[key-1]['title']);
        appAPI.db.set('course_Data',dbData);


  }, ["all"]);

Тот же код, когда я храню в extension.js, прекрасно работает с методом appAPI selectedText, но в фоновом режиме, похоже, не работает jquery. Я говорю это потому, что не могу достичь оператора alert('1') с помощью кода jquery перед тем, как отфильтровать отбросы таблиц на основе выбранного значения.

2 ответа

В настоящее время фоновая область Crossrider не поддерживает jQuery, поэтому ваш код не работает в background.js.

Вы можете использовать обычные объекты DOM (например, окно, документ) для достижения того же результата в фоновом режиме.

Ну, если ты не видишь alert('1') сценарий должен либо преждевременно завершиться, либо зацикливаться бесконечно. Я не думаю, что эти вызовы jQuery могут зацикливаться неопределенно data объект не содержит selectedText поле. Это возможно?

Другие вопросы по тегам