2011-09-08 146 views
0

我正在處理的是我有一個黑色背景的div,我希望能夠點擊並拖動它。我使用JQuery UI,以及我似乎無法弄清楚如何做到這一點。DIV在網頁上拖動(Chrome擴展)

當div的圖標被點擊時,它會切換顯示/隱藏,我想要點擊並拖動它在網頁上。稍後,這將對計算器,秒錶等有幫助:但我似乎無法弄清楚如何顯示/隱藏div,以及如何拖動它。

任何幫助將不勝感激。

清單:

{ 
    "name": "DIV Drag Test", 
    "version": "0.0.1", 
    "description": "DIV Drag Test", 
    "background_page": "background.html", 
    "permissions": ["http://*/*", "tabs"], 

    "icons": { 
     "48": "logo.png" 
    }, 

    "browser_action": { 
     "default_icon": "logo.png", 
     "default_title": "DIV Drag Test" 
    }, 

    "content_scripts": [ 
    { 
     "matches": ["http://*/*"], 
     "css": ["style.css"], 
     "js": ["js/jquery.js", "js/jquery-ui.js"] 
    } 
    ] 
} 

CSS:

div#test8935 { 
    cursor:pointer; 
    width:320px; 
    height:240px; 
    background-color:#000;} 

background.html

<script> 
$(document).ready(function() { 
    $('div#test8935').draggable(); 

    chrome.browserAction.onClicked.addListener(function(tab) { 
     $('div#test8935').toggle(350); 
    }); 
}); 

回答

0

自從我完成Chrome擴展開發之後,我已經有一段時間了,但是這些都是基於我記憶的初始想法。

它看起來像你試圖通過background.html操縱網站上的div。你確定你不想定位內容腳本嗎?背景沒有界面,不會直接與頁面交互。

所以我認爲你想要做的就是將你的腳本從background.html移動到一個新的js文件,並將它與你的contentscript js params一起包含在內。

"content_scripts": [ 
{ 
    "matches": ["http://*/*"], 
    "css": ["style.css"], 
    "js": ["js/jquery.js", "js/jquery-ui.js", "contentscript.js"] 
} 
+0

我刪除了腳本標記,將background.html文件重命名爲script.js,並更新了清單,但仍然無效。 –

+0

一旦你有一個內容腳本,你可以使用螢火蟲或ie/chrome開發者工具進行調試。跳進來看看你的劇本破壞的地方!無法調試,沒有其他反饋。 – mrtsherman