タグ付けされた質問 「javascript」

ECMAScript(JavaScript / JS)とそのさまざまな方言/実装(ActionScriptを除く)でのプログラミングに関する質問。このタグが単独で使用されることはほとんどありませんが、ほとんどの場合、[node.js]、[jquery]、[json]、および[html]タグに関連付けられています。

7
JavaScriptコードを<a>に配置するさまざまな方法の違いは何ですか?
JavaScriptコードを&lt;a&gt;タグに入れる次の方法を見てきました。 function DoSomething() { ... return false; } &lt;a href="javascript:;" onClick="return DoSomething();"&gt;link&lt;/a&gt; &lt;a href="javascript:DoSomething();"&gt;link&lt;/a&gt; &lt;a href="javascript:void(0);" onClick="return DoSomething();"&gt;link&lt;/a&gt; &lt;a href="#" onClick="return DoSomething();"&gt;link&lt;/a&gt; ユーザーがJavaScriptを有効にしていない場合に備えて、JavaScriptコードだけでなく有効なURLを配置しようとする考えを理解しています。しかし、この議論の目的のために、私はJavaScriptが有効になっていると仮定する必要があります(JavaScriptがないとログインできません)。 私は個人的にオプション2が好きです。これにより、何が実行されるかを確認できます。特に、関数に渡されるパラメーターがある場所をデバッグするときに役立ちます。私はそれをかなり使用しましたが、ブラウザの問題は見つかりませんでした。 私は人々が4を推薦することを読みました、なぜならそれはユーザーにたどる本当のリンクを与えるからです、しかし実際には、#は「本当」ではありません。それは絶対にどこにも行きません。 ユーザーがJavaScriptを有効にしていることがわかっているときに、サポートされていない、または本当に悪いものはありますか? 関連する質問:JavaScriptリンクのHref:「#」または「javascript:void(0)」?。
87 javascript  html  href 

17
jQueryAjaxリクエストは送信されずにキャンセルされます
スクリプトをMicrosoftのWorld-WideTelescopeアプリに接続しようとしています。後者はポート5050でコマンドをリッスンします。ブラウザと同じマシンで実行されています(現在Chromeですが、私が知る限り、動作はFirefox7とIE9で同じです)。 問題としてXSS制限を排除するために、元のhtmlファイルを含む「Access-Control-Allow-Origin:*」ヘッダーを送信しています。 WWTにアクセスするための私のコードは次のとおりです。 $.ajax({ type: 'POST', url: url, data: data, crossDomain: true, success: success, dataType: dataType }); この場合のURLは「http://127.0.0.1:5050 / layerApi.aspx?cmd = new&...」です(明らかに...ここではいくつかの追加パラメーターの省略形です)。 Chromeのネットワーク診断を見ると、次のことがわかります。 Request URL:http://127.0.0.1:5050/layerApi.aspx?cmd=new&amp;... Request Headersview source Accept:application/xml, text/xml, */*; q=0.01 Content-Type:application/x-www-form-urlencoded Origin:http://gwheeler4 Referer:http://gwheeler4/conceptconnect.html User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.186 Safari/535.1 リクエストは送信されます-WWTが新しいレイヤーを作成しているのがわかります。ただし、コールバックがありません。呼び出されるエラーコールバックを追加したが、jqXHRオブジェクトのerrorプロパティが「error」でステータスが0の場合。Chromeでネットワークリクエストを見ると、ステータスとして「(cancelled)」が表示され、応答がありません。 。 同じURLを取得して新しいブラウザタブに貼り付けると、応答が期待されるXMLであることがわかります。 もちろん、ここでの違いは、これがPOSTではなくGETであるということですが、スクリプトで試してみましたが、違いはありません。 …

12
html <input type =“ text” /> onchangeイベントが機能しない
私はいくつかの実験をしようとしています。私がしたいのは、ユーザーがテキストボックスに何かを入力するたびに、それがダイアログボックスに表示されることです。onchangeイベントプロパティを使用してそれを実現しましたが、機能しません。それを機能させるには、送信ボタンを押す必要があります。私はAJAXについて読み、これについて学ぶことを考えています。それを機能させるにはまだAJAXが必要ですか、それとも単純なJavaScriptで十分ですか?助けてください。 index.php &lt;script type="text/javascript" src="javascript.js"&gt; &lt;/script&gt; &lt;form action="index.php" method="get"&gt; Integer 1: &lt;input type="text" id="num1" name="num1" onchange="checkInput('num1');" /&gt; &lt;br /&gt; Integer 2: &lt;input type="text" id="num2" name="num2" onchange="checkInput('num2');" /&gt; &lt;br /&gt; &lt;input type="submit" value="Compute" /&gt; &lt;/form&gt; javascript.js function checkInput(textbox) { var textInput = document.getElementById(textbox).value; alert(textInput); }

4
本番環境でbabel-nodeを使用しても大丈夫ですか
ES6構文をサポートするために、babel-nodeとbabelifyトランスフォームを使用したbrowserifyを使用してサイトを開発しています。 ES6をノードで実行するために必要な他のオプションではbabel-node server なく 、本番node server 環境でこれを実行できますか? これが私がビルドのために実行していて開発を開始するコマンドです // npm run build browserify -t [babelify] client.js &gt; public/js/bundle.js", // npm start babel-node server.js" これが私の開発者の依存関係です "babel": "^4.0.1", "babelify": "^5.0.3", "browserify": "^8.0.3"

10
iOSデバイス(モバイルSafari)の入力フィールドでテキストをプログラムで選択する
モバイルSafariを実行しているiPhone、iPadなどのiOSデバイスで入力フィールドのテキストをプログラムでどのように選択しますか? 通常.select()、&lt;input ... /&gt;要素で関数を呼び出すだけで十分ですが、これはそれらのデバイスでは機能しません。カーソルは既存のエントリの最後に置かれ、選択は行われません。


6
JavaScriptでグローバル変数に未定義の値があることに驚いた
今日、グローバル変数にundefined値がある場合があるのを見て、私は完全に驚きました。 例: var value = 10; function test() { //A console.log(value); var value = 20; //B console.log(value); } test(); 次のように出力します undefined 20 ここで、JavaScriptエンジンがグローバル値をと見なしているのはなぜですかundefined。JavaScriptがインタープリター言語であることを私は知っています。関数内の変数をどのように考慮することができますか? それはJavaScriptエンジンからの落とし穴ですか?
87 javascript  scope 

15
オブジェクトの配列を宣言する
配列である変数があり、配列のすべての要素をデフォルトでオブジェクトとして機能させたいです。これを実現するために、コードでこのようなことを行うことができます。 var sample = new Array(); sample[0] = new Object(); sample[1] = new Object(); これは問題なく機能しますが、インデックス番号については触れたくありません。配列のすべての要素をオブジェクトにしたい。宣言または初期化するにはどうすればよいですか? var sample = new Array(); sample[] = new Object(); 上記のコードを試しましたが、機能しません。インデックス番号を使用せずにオブジェクトの配列を初期化するにはどうすればよいですか?

3
gulpイベントのstdoutへのconsole.log
gulpタスクが実行中または実行されたときにstdout(構成環境)にログを記録したい。 このようなもの: gulp.task('scripts', function () { var enviroment = argv.env || 'development'; var config = gulp.src('config/' + enviroment + '.json') .pipe(ngConstant({name: 'app.config'})); var scripts = gulp.src('js/*'); return es.merge(config, scripts) .pipe(concat('app.js')) .pipe(gulp.dest('app/dist')) .on('success', function() { console.log('Configured environment: ' + environment); }); }); どのイベントに対応すべきか、またはこれらのリストをどこで見つけるべきかわかりません。ポインタはありますか?どうもありがとう。

3
ユーザーブラウザで矢印キーのスクロールを無効にする
キャンバスとJavaScriptを使ってゲームを作っています。 ページが画面より長い場合(コメントなど)、下矢印を押すとページが下にスクロールし、ゲームをプレイできなくなります。 プレーヤーが下に移動したいときにウィンドウがスクロールしないようにするにはどうすればよいですか? Javaゲームなどでは、ユーザーがゲームをクリックする限り、これは問題ではないと思います。 FFで矢印キーを使用してページスクロールを無効にする方法から解決策を試しましたが、機能させることができませんでした。


6
create-react-appを使用するReactアプリでES6機能をポリフィルするための最良の方法
私はInternetExplorerでReact.jsアプリケーションをテストしてきましたが、ES6 / 7コードのようにArray.prototype.includes()壊れていることがわかりました。 私はcreate-react-appを使用していますが、誰もが必要としているわけではないため、多くのポリフィルを含めないことを選択したようです。また、ビルド時間が遅くなります(たとえば、こことここを参照)。ドキュメント(執筆時点)は次のことを示唆しています。 ランタイムサポートが必要な他のES6 +機能(Array.from()やSymbolなど)を使用する場合は、適切なポリフィルを手動で含めるか、対象のブラウザーがすでにそれらをサポートしていることを確認してください。 だから... 「手動で」それらを含めるための最良の方法は何ですか?

9
App.settings-角度のある方法?
追加したい App Settingsいくつかの定数と事前定義された値を含むセクションをアプリます。 を使用するこの回答はすでに読んでいますOpaqueTokenが、Angularでは非推奨です。この記事では違いについて説明しますが、完全な例は提供されておらず、私の試みは失敗しました。 これが私が試したことです(それが正しい方法かどうかはわかりません): //ServiceAppSettings.ts import {InjectionToken, OpaqueToken} from "@angular/core"; const CONFIG = { apiUrl: 'http://my.api.com', theme: 'suicid-squad', title: 'My awesome app' }; const FEATURE_ENABLED = true; const API_URL = new InjectionToken&lt;string&gt;('apiUrl'); そして、これは私がそれらの定数を使用したいコンポーネントです: //MainPage.ts import {...} from '@angular/core' import {ServiceTest} from "./ServiceTest" @Component({ selector: 'my-app', template: ` &lt;span&gt;Hi&lt;/span&gt; ` …

20
chart.jsはまったく新しいデータをロードします
のAPIをchart.js使用すると、ロードされたデータセットのポイントを編集できます。次に例を示します。 .update( ) Chartインスタンスでupdate()を呼び出すと、更新された値でグラフが再レンダリングされ、既存の複数のポイントの値を編集して、それらを1つのアニメーションレンダリングループでレンダリングできます。 .addData( valuesArray, label ) ChartインスタンスでaddData(valuesArray、label)を呼び出して、各データセットの値の配列とそれらのポイントのラベルを渡します。 .removeData( ) ChartインスタンスでremoveData()を呼び出すと、チャート上のすべてのデータセットの最初の値が削除されます。 これらはすべて素晴らしいですが、古いデータセットを一掃して、まったく新しいデータセットを読み込む方法がわかりません。ドキュメントはこれをカバーしていないようです。

4
/ \ s / gと/ \ s + / gに違いはありますか?
スペース文字を含む文字列がある場合: var str = ' A B C D EF '; 文字列からスペースを削除します(これが必要です:) 'ABCDEF'。 この両方: str.replace(/\s/g, '') この: str.replace(/\s+/g, '') 正しい結果を返します。 これ+は、この状況ではが不要であることを意味しますか?この状況では、これら2つの正規表現に違いはありますか(たとえば、何らかの方法で異なる結果が得られる可能性があります)? 更新:パフォーマンスの比較-/\s+/gより高速です。ここを参照してください:http://jsperf.com/s-vs-s
87 javascript  regex 

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