簡體   English   中英

在實際網頁上執行JavaScript文件的最快捷,最簡單的方法是什么?

[英]What’s the quickest, easiest way to execute a JavaScript file on a live web page?

我有這個JavaScript文件的URL:

https://rawgit.com/Khan/tota11y/master/build/tota11y.min.js

(托管在GitHub上並通過RawGit傳遞),我想通過瀏覽器的控制台將其注入實時網頁。

為了實現這一點,我可以動態創建一個<script>元素並將其附加到DOM:

(function () {
  var s = document.createElement('script');
  s.src = 'https://rawgit.com/Khan/tota11y/master/build/tota11y.min.js';
  document.body.appendChild(s);
}())

但這既不快也不容易。 我想使用一個API,通過一個簡單的調用使這成為可能,例如:

exec('https://rawgit.com/Khan/tota11y/master/build/tota11y.min.js')

Chrome或Firefox是否在其控制台中提供此類API(或類似內容)?


使用案例:在實時網頁上快速測試GitHub上托管的JavaScript庫。

更新: 截至2018年5月18日,開發人員工具欄已從Firefox Nightly中刪除。

在Firefox中,您可以使用開發人員工具欄注入腳本。 使用Shift+F2打開它並鍵入inject https://rawgit.com/Khan/tota11y/master/build/tota11y.min.js

有關MDN的更多信息

你需要一個模塊加載功能。 你有兩條路線:

  • 要么使用像Require.js這樣的模塊加載器,它已經為你做了那種動態加載。 它強制您使用AMD風格的腳本。 這個網站更多地討論了javascript中的模塊。 require對象將在控制台中可用,因為它是全局的。

  • 如果你已經使用了jQuery,那么使用像jQuery那樣的hackish函數(這是一個非常大的庫來導入)。 jQuery是全局的,您可以在控制台中調用該函數。

編輯 :我沒有鏈接瀏覽器特定功能的原因是因為它太具體了。 使用僅限JavaScript的解決方案適用於所有瀏覽器以測試兼容性。

對於chrome,有一個名為Script Injector的插件就是這樣做的

https://chrome.google.com/webstore/detail/script-injector/fddnddnolonllcgfbenaloajnbhebmob?hl=en

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM