Chromeデベロッパーツールを使用したJavaScriptの編集


94

Chromeのデベロッパーツールを使用して、サイトのJavaScriptを編集しようとしています。これを行う方法の約30のアカウントを読み、いくつかのビデオを視聴しました。実際には、[ソース]タブに移動して編集するファイルを開くと、何もできません。足りないステップはありますか?

ブレークポイントを作成したり、ステップスルーしたりできます。編集できません。この機能は最近削除されましたか?


1
コンソールで問題なく通話できます。編集はできません。
cooperia 2012

1
ローカル関数と変数をオーバーライドできますが、開発ツールからファイルへの変更を保存する方法はありません。それには、まだ外部エディタが必要です。
Geuis、2012

1
実際、CSSファイルは編集できますが、PHPファイルに埋め込まれたスクリプトは編集できません。>。>
cooperia 2012

1
まあ、私はOperaでやりたいことができます。問題は解決しました。
cooperia 2012

1
@cooperiaはjsコードを* .jsファイルに入れれば、Chromeでリアルタイムに編集して実行できます。
Mahn 2012

回答:


102

この質問は古くなっていますが、同様の問題があり、解決策を見つけました。

ファイルを整頓している場合、Chromeでは編集できません。オフにして編集できました。これに賭ける意思はあなたの問題です。


4
はい、役に立ちました。ありがとうございました。@ raddevon、編集できるようになりましたが、ページに影響はありません
Bolas

2
このトピックを検索する他の人のために:私は設定をオフに設定しましたが、それでも編集できませんでした。オンとオフを再度切り替えるのに役立ちました。(そのアドバイスを
いただい

3
続き:いいえ。@raddevonと同じ問題があることがわかりました。おそらくクロムのバグでしょう。スクリプトを編集して保存したり、デバッグ時にスクリプトのブレークポイントにヒットしたりできます。ただし、実際に実行されているスクリプトは、編集されていない元のバージョンのままです。例:スクリプトを編集し、すべての行にコメントを付けましたが、それでもスクリプトを実行したり、行のブレークポイントにヒットしたりすることができました。そのため、編集されたバージョンは実行されておらず、表示されているだけです...もちろん、スクリプトを再起動しますあらゆる種類の異なる方法で影響なし
Drkawashima 2013年

4
補足すると、補足として、コピーして元のファイルに貼り付けると、編集可能な修正された元のファイルになります。
Eoin

2
@Eoin素晴らしい!それは完全にうまくいった。「ローカルオーバーライド」機能により、これは完全に機能します。ヒントをありがとう:-)
Xan-Kun Clark-Davis

52

「ソース」タブの開発者ツールでJavaScriptを編集できますが、独自のファイルでJavaScriptを編集することしかできません。HTML(またはPHP)ファイルに埋め込まれたスクリプトは読み取り専用のままです。


4
LinuxでChromeを使用していますが、単一の.jsファイルであってもJavaScriptを編集できません。
roopunk

2
やや興味深い注:Pretty Printのオン/オフ(「{}」アイコン)を切り替えると、埋め込まれたjsの編集が可能になりますが、変更は反映されないため、探しているものではありません。(Chrome 29)
Patrick

それを知る必要がありました。ありがとうございました。
18年

29

これにはいくつかの制限があります。

  1. JSファイルである必要があります。タグをHTMLページに埋め込むことはできません。

  2. 美化できません。


上記のガイドラインに従っても、[ソース]タブでの変更が反映されない場合は、左側のツリービューで編集したファイルを右クリックして、[保存]を選択してください。ローカルファイルの保存を求めるダイアログが表示される場合がありますが、キャンセルすることもできます。その時点でのみ、Chromeの編集履歴は最終的に編集がスタックしたことを示します。
Erhhung 2014

この新しいファイルは、JSを埋め込まれていたので、私はクレイジーつもりだったが、あなたは#gcb why..thank私はedit..iは理解していなかったことができなかったと#welah
carinlynchin

Sources開発者ツールのタブの下のリストからJSファイルのインクルードを解除することは可能ですか?
techie_28

@ techie_28わかりません。別の質問を開いてください。しかし、そのための簡単な拡張機能を記述します。
gcb 2016年

13

これを永続的に保存する必要があるかどうかはわかりませんが、jsを一時的に変更する必要がある場合:

変更したいjavascriptをテキストエディターにコピーして編集し、コンソールに貼り付けると、再定義する必要のある関数や何かが再定義されます。

たとえば、ページに次のような場合:

<script>
var foo = function() { console.log("Hi"); }
</script>

スクリプト間でコンテンツを取得して編集し、次のようにデバッガーに入力できます。

foo = function() { console.log("DO SOMETHING DIFFERENT"); }

そしてそれは私のために働くでしょう。

またはあなたが好きなら

function foo() {
    doAThing();
}

入力するだけです

function foo() {
    doSomethingElse();
}

fooが再定義されます。

おそらく最善の回避策ではありませんが、うまくいきます。ページをリロードするまで続きます。


4

「chrome dev tool edit javascript」で検索しました。このページは最初の検索結果です。しかし、それはあまりにも古く、私を助けません。

Chrome 73を使用していますが、このバージョンのChromeには[ローカルオーバーライドを有効にする]オプションがあります。この関数を使用して、JavaScriptを編集し、実行してデバッグすることができました。

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.