2012-12-10 80 views
0

我想创建一个Chrome扩展,可以从hiphopdx下载的MP3上的元素。我发现,一旦你点击网站上的播放按钮,就可能提取mp3的下载链接。但是我坚持让我的扩展点击播放按钮。 这里是我现在用的扩展页面的例子: http://www.hiphopdx.com/index/singles/id.16603/title.fred-the-godson-f-the-kid-daytona-back-to-school-prod-kaimbr试图让我的Chrome扩展程序,点击页面

我的JSON格式的清单

"name": "My Test", 
"version": "1", 
"manifest_version": 2, 
"background": { 
    "scripts": ["popup.js"] 
}, 
"browser_action": { 
    "default_icon": "icon.png" 
}, 
"permissions": ["tabs", "http://*/*", "https://*/*"] 

我popup.html

<!doctype html> 
<html> 
    <head> 
    <script src="popup.js"></script> 
    </head> 
    <body> 
    </body> 
</html> 

popup.js

function ShowOperationMessage(obj, evt) { 
     var fireOnThis = obj; 
     if (document.createEvent) { 
      var evObj = document.createEvent('MouseEvents'); 
      evObj.initEvent(evt, true, false); 
      fireOnThis.dispatchEvent(evObj); 
     } else if (document.createEventObject) { 
      fireOnThis.fireEvent('on' + evt); 
     } 
    } 

ShowOperationMessage(document.getElementsByClassName("playBtns medium awesome red adjust launchplayer left"),"click"); 

回答

0

将您的代码修改为内容脚本代码,我能够按一下按钮

enter image description here

参考

新增康特NT脚本部分,以消除背景东西

的manifest.json

{ 
    "name": "Mouse Clicks", 
    "version": "0.0.1", 
    "manifest_version": 2, 
    "description": "This demonstrates how mouse clicks are tracked", 
    "content_scripts": [ 
    { 
     "matches": ["http://www.hiphopdx.com/index/singles/id.16603/title.fred-the-godson-f-the-kid-daytona-back-to-school-prod-kaimbr"], 
     "js": ["myscript.js"] 
     } 
    ] 

} 

myscript.js

document.getElementsByClassName("playBtns medium awesome red adjust launchplayer left")返回如此使用的阵列obj[0]索引

function ShowOperationMessage(obj, evt) { 
    var fireOnThis = obj[0]; 
    if (document.createEvent) { 
     var evObj = document.createEvent('MouseEvents'); 
     evObj.initEvent(evt, true, false); 
     fireOnThis.dispatchEvent(evObj); 
    } else if (document.createEventObject) { 
     fireOnThis.fireEvent('on' + evt); 
    } 
} 

ShowOperationMessage(document.getElementsByClassName("playBtns medium awesome red adjust launchplayer left"), "click"); 

让我知道如果你需要更多的信息。

+0

+ user1874600你不需要点击按钮。你可以得到它的URL这样的'$(“playBtns。”)数据()file' – PAEz

+0

@PAEz:。在这段代码''Play 没有数据的关键,我是在看错了按钮? – Sudarshan

+0

它的一个jquery事情,我只是最近才知道自己的数据()。尝试代码;)为我工作。只有概率是,如果处理不当JS设置呢,但是一旦在页面加载应该正常工作。 – PAEz