2013-03-01 54 views
0

我正在做一個Chrome擴展來書籤頁面並將它們存儲爲JSON和localStorage。 下面是截圖 -
Extension screenshot
問題是,當我點擊鏈接時,什麼也沒有發生。
於是,我就分配所有的鏈接。鏈路級,並連接這個監聽器 -彈出頁面中的鏈接不工作

$('.link').click(function(){ 
    var url = $(this).attr('href'); 
    var urlList = {}; 
    urlList['url'] = url; 
    chrome.tabs.create(urlList); 
}); 

但還是沒有動靜。我沒有右鍵點擊瀏覽器動作按鈕,並試圖檢查彈出窗口,它顯示沒有監聽器連接到鏈接。


這是在github上的source of whole project


請幫我做這個鏈接打開一個新的選項卡與指定的網址。

回答

1

您應該在鏈接的href屬性中輸入正確的url地址。因此,在你$('#viewAll').click(function(){ ... }回調,由

str += '<tr>' + '<td><a class="link" href="http://' + keys[i] + '">' + keys[i] + 

更換線

str += '<tr>' + '<td><a class="link" href="' + objects[keys[i]] + '">' + keys[i] + 

,也將努力!

+0

我想它已經,這是行不通的! – svineet 2013-03-01 10:15:16

+0

當鉻返回的網址,它返回它與http:// – svineet 2013-03-01 10:15:36

+0

我只是試過了,它的工作!仔細檢查你是否沒有做任何錯字。 – 2013-03-01 10:26:57

0

試試這個,我也做了一些變化,your code

$('.link').live('click', function() { 
    var url = $(this).attr('href'); 
    $('#message').html(url); 
    chrome.tabs.create({ 'url' : url }); 
}); 

$('#viewAll').click(function(){ 
    var objects = JSON.parse(localStorage['DocSaver']) 

    var keys = []; 
    for (key in objects) { 
    keys.push(key); 
    } 
    var i = 0; 
    var keyslen = keys.length; 
    var str = ''; 
    //SORTED KEY ITERATION 
    while (i < keyslen) { 
    str += '<tr>' + '<td><a class="link" href="' + objects[keys[i]] + '">' + keys[i] + 
    '</a></td></tr>' 
    ; 
    ++i; 
    } 
    $('#viewFrame > table').html(str); 
    $('#viewFrame').css('display','block'); 
    $('#message').html('Done displaying!'); 
});