मुझे पता है कि यह कई पोस्टों में पूछा गया है लेकिन ईमानदारी से मैं उन्हें नहीं पाता। मैं जावास्क्रिप्ट, क्रोम एक्सटेंशन और सब कुछ के लिए नया हूं और मेरे पास यह क्लास असाइनमेंट है। तो मुझे एक प्लगइन बनाने की ज़रूरत है जो क्रॉस डोमेन अनुरोधों का उपयोग करके किसी भी पृष्ठ पर डोम वस्तुओं की गणना करेगा। मैं Chrome एक्सटेंशन API का उपयोग करके अब तक इसे प्राप्त करने में सक्षम रहा हूं। अब समस्या यह है कि मुझे contentScript.js फ़ाइल से अपने popup.html पृष्ठ पर डेटा दिखाना होगा। मुझे नहीं पता कि ऐसा कैसे करना है कि मैंने प्रलेखन पढ़ने की कोशिश की है, लेकिन क्रोम में संदेश भेजना मुझे समझ नहीं आ रहा है कि मुझे क्या करना है।
निम्नलिखित अब तक का कोड है।
manifest.json
{
"manifest_version":2,
"name":"Dom Reader",
"description":"Counts Dom Objects",
"version":"1.0",
"page_action": {
"default_icon":"icon.png",
"default_title":"Dom Reader",
"default_popup":"popup.html"
},
"background":{
"scripts":["eventPage.js"],
"persistent":false
},
"content_scripts":[
{
"matches":["http://pluralsight.com/training/Courses/*", "http://pluralsight.com/training/Authors/Details/*", "https://www.youtube.com/user/*", "https://sites.google.com/site/*", "http://127.0.0.1:3667/popup.html"],
"js":["domReader_cs.js","jquery-1.10.2.js"]
//"css":["pluralsight_cs.css"]
}
],
"permissions":[
"tabs",
"http://pluralsight.com/*",
"http://youtube.com/*",
"https://sites.google.com/*",
"http://127.0.0.1:3667/*"
]
popup.html
<!doctype html>
<html>
<title> Dom Reader </title>
<script src="jquery-1.10.2.js" type="text/javascript"></script>
<script src="popup.js" type="text/javascript"></script>
<body>
<H1> Dom Reader </H1>
<input type="submit" id="readDom" value="Read DOM Objects" />
<div id="domInfo">
</div>
</body>
</html>
eventPage.js
var value1,value2,value3;
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
if (request.action == "show") {
chrome.tabs.query({ active: true, currentWindow: true }, function (tabs) {
chrome.pageAction.show(tabs[0].id);
});
}
value1 = request.tElements;
});
popup.js
$(function (){
$('#readDom').click(function(){
chrome.tabs.query({active: true, currentWindow: true}, function (tabs){
chrome.tabs.sendMessage(tabs[0].id, {action: "readDom"});
});
});
});
contentScript
var totalElements;
var inputFields;
var buttonElement;
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse){
if(request.action == "readDom"){
totalElements = $("*").length;
inputFields = $("input").length;
buttonElement = $("button").length;
}
})
chrome.runtime.sendMessage({
action: "show",
tElements: totalElements,
Ifields: inputFields,
bElements: buttonElement
});
किसी भी मदद की सराहना की जाएगी और कृपया किसी भी अच्छाई से बचें जो मैंने किया :)