好像很多朋友都沒(méi)有理解我的意思。。。其實(shí)我問(wèn)的是關(guān)于executeScript的兩個(gè)問(wèn)題。因?yàn)閑xecuteScript有一個(gè)code參數(shù)和一個(gè)file參數(shù),code是在當(dāng)前頁(yè)的js文件直接運(yùn)行一段代碼;而file是注入一個(gè)新的js文件,也就是我標(biāo)題的意思。1、chrome.tabs.executeScript(tb[0].id,{code:"abc(3)"},null);……function abc(num){alert(num)}這屬于直接用code來(lái)在當(dāng)前js文件運(yùn)行一段代碼,按照我的期望,它應(yīng)該運(yùn)行成功后就彈出窗口上面寫(xiě)個(gè)3,。但實(shí)際上它沒(méi)有任何反映。我就很奇怪,code不是執(zhí)行一段代碼嗎?為什么我不能執(zhí)行同在a.js下的一個(gè)函數(shù)?莫非abc(3)這不能算代碼嗎?2、chrome.tabs.executeScript(tb[0].id,{file:"b.js"},null);這是我在標(biāo)題問(wèn)的問(wèn)題。我在a.js中運(yùn)行了以上代碼,在一個(gè)tb[0]的tab插入b.js。而在b.js中計(jì)算出了一個(gè)變量值(假設(shè)為v),那么我如何將v傳到a.js呢?要知道這個(gè)file:"b.js"僅僅只是注入了一段代碼,可它并沒(méi)有辦法傳值到b.js上。運(yùn)用全局變量固然是個(gè)辦法,可不到萬(wàn)不得已的時(shí)候,我不太想用,不知道大家有沒(méi)有其他的解決辦法。
a.js中executeScript給某tab注入b.js,b.js計(jì)算完的值怎么傳回a.js中?
慕村225694
2018-07-19 17:18:48