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

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

5
マップタイリングアルゴリズム
地図 私は、perlinノイズハイトマップを使用してJavascriptでタイルベースのRPGを作成し、ノイズの高さに基づいてタイルタイプを割り当てています。 マップはこのように見えます(ミニマップビューで)。 画像の各ピクセルからカラー値を抽出し、タイル辞書のタイルに対応する(0〜255)の間の位置に応じて整数(0〜5)に変換するかなり単純なアルゴリズムがあります。次に、この200x200の配列がクライアントに渡されます。 次に、エンジンは配列の値からタイルを決定し、それらをキャンバスに描画します。つまり、山、海など、リアルな外観の特徴を持つ興味深い世界ができあがります。 次に、私がしたかったのは、隣人が同じタイプでない場合にタイルを隣人にシームレスに混ぜ合わせるようなある種のブレンドアルゴリズムを適用することでした。上記のサンプルマップは、プレーヤーがミニマップに表示するものです。画面上に、白い長方形でマークされたセクションのレンダリングバージョンが表示されます。タイルは、単色のピクセルとしてではなく、画像とともにレンダリングされます。 これは、ユーザーがマップに表示するものの例ですが、上記のビューポートが示す場所とは異なります! この見方で、私は移行を起こしたいと思っています。 アルゴリズム 異なるタイプのタイルの隣にある場合、ビューポート内のマップをトラバースし、各タイルの上部に別の画像をレンダリングする単純なアルゴリズムを思いつきました。(マップは変更しません!いくつかの追加画像をレンダリングするだけです。)このアルゴリズムのアイデアは、現在のタイルの近傍をプロファイルすることでした: これは、エンジンがレンダリングする必要のあるシナリオの例です。現在のタイルはXでマークされたタイルです。 3x3配列が作成され、その周りの値が読み込まれます。この例では、配列は次のようになります。 [ [1,2,2] [1,2,2] [1,1,2] ]; 私のアイデアは、可能なタイル構成の一連のケースを考え出すことでした。非常に単純なレベルで: if(profile[0][1] != profile[1][1]){ //draw a tile which is half sand and half transparent //Over the current tile -> profile[1][1] ... } これはこの結果を与えます: そこから遷移として働く[0][1]の[1][1]ではなく、から[1][1]の[2][1]、どこのハードエッジが残ります。したがって、その場合はコーナータイルを使用する必要があると考えました。私は2つの3x3スプライトシートを作成し、必要なタイルのすべての可能な組み合わせを保持すると考えました。次に、ゲーム内にあるすべてのタイルについてこれを複製しました(白い領域は透明です)。これは、タイルのタイプごとに16タイルになります(各スプライトシートの中央のタイルは使用されません)。 理想的な結果 したがって、これらの新しいタイルと正しいアルゴリズムを使用すると、サンプルセクションは次のようになります。 私が行ったすべての試みは失敗しましたが、アルゴリズムには常にいくつかの欠陥があり、パターンは奇妙になってしまいます。私はすべてのケースを正しくすることができないようで、全体的にそれを行うには悪い方法のようです。 解決策? したがって、この効果をどのように作成できるか、またはプロファイリングアルゴリズムを作成するための方向性に関する代替ソリューションを誰かが提供できるとしたら、私は非常に感謝します!


4
mouseoverイベントとmouseenterイベントの違いは何ですか?
私はいつもmouseoverイベントを使用してきましたが、jQueryのドキュメントを読んでいるときに見つけましたmouseenter。それらはまったく同じように機能するようです。 2つの間に違いはありますか?ある場合、いつ使用する必要がありますか? (mouseoutvsにも適用されますmouseleave)。

14
jQueryを使用して、パスなしでファイル入力の選択されたファイル名を取得する
私はこれを使いました: $('input[type=file]').val() 選択したファイル名を取得しますが、「C:\ fakepath \ filename.doc」のようにフルパスを返しました。「fakepath」の部分は実際にそこにありました-想定されているかどうかはわかりませんが、ファイルアップロードのファイル名を扱うのは初めてです。 ファイル名(filename.doc)を取得するにはどうすればよいですか?

9
ブートストラップアラートの自動クローズ
[ウィッシュリストに追加]ボタンをクリックしたときにアラートを呼び出し、2秒でアラートが消えるようにする必要があります。これは私が試した方法ですが、アラートが表示されるとすぐに消えます。バグがどこにあるかわからない。誰でも手伝ってくれる? JSスクリプト $(document).ready (function(){ $("#success-alert").hide(); $("#myWish").click(function showAlert() { $("#success-alert").alert(); window.setTimeout(function () { $("#success-alert").alert('close'); }, 2000); }); }); HTMLコード: <div class="product-options"> <a id="myWish" href="" class="btn btn-mini">Add to Wishlist </a> <a href="#" class="btn btn-mini"> Purchase </a> </div> 警告ボックス: <div class="alert alert-success" id="success-alert"> <button type="button" class="close" data-dismiss="alert">x</button> <strong>Success!</strong> Product have added to your …


11
ES 6のオブジェクトからいくつかのプロパティを取得するためのワンライナー
ES6で最もコンパクトな方法で少数の属性のみを取る関数をどのように作成できますか? 解体+単純化されたオブジェクトリテラルを使用した解決策を考え出しましたが、フィールドのリストがコード内で繰り返されるのが嫌いです。 さらにスリムなソリューションはありますか? (v) => { let { id, title } = v; return { id, title }; }

27
ドロップダウンボックスのすべてのオプションをクリアするにはどうすればよいですか?
私のコードはIEでは機能しますが、Safari、Firefox、Operaでは機能しません。(ビッグサプライズ) document.getElementById("DropList").options.length=0; 調べてみたら、嫌いなものだとわかりましたlength=0。 私が試した...options=nullとvar clear=0; ...length=clear同じ結果に。 私は一度に複数のオブジェクトに対してこれを行っているので、軽量のJSコードを探しています。

12
ページを更新せずにURLパラメータを削除する
「?」の後のすべてを削除しようとしています。ドキュメントのブラウザURLで準備ができています。 これが私が試していることです: jQuery(document).ready(function($) { var url = window.location.href; url = url.split('?')[0]; }); 私はこれを行うことができ、以下が機能することを確認できます: jQuery(document).ready(function($) { var url = window.location.href; alert(url.split('?')[0]); });
153 javascript  jquery 

14
要素のコンテンツがオーバーフローしているかどうかを確認しますか?
要素がオーバーフローしたかどうかを検出する最も簡単な方法は何ですか? 私の使用例は、特定のコンテンツボックスの高さを300pxに制限することです。内部のコンテンツがそれよりも高い場合は、オーバーフローで切り捨てます。しかし、オーバーフローしている場合は「詳細」ボタンを表示したいが、そうでない場合はそのボタンを表示したくない。 オーバーフローを検出する簡単な方法はありますか、それともより優れた方法はありますか?
153 javascript  css  overflow 

7
JSのtypeofエラーをチェックする
JSでは、関数に渡された引数が実際に「エラー」タイプであるか、エラーのインスタンスであるかどうかを確認することは不可能のようです。 たとえば、これは無効です。 typeof err === 'error' 可能なタイプは6つしかないため(文字列の形式): typeof演算子は、型情報を文字列として返します。typeof返される可能性のある値は6つあります。 「数値」、「文字列」、「ブール値」、「オブジェクト」、「関数」、「未定義」。 MSDN しかし、次のような簡単な使用例がある場合はどうなりますか。 function errorHandler(err) { if (typeof err === 'error') { throw err; } else { console.error('Unexpectedly, no error was passed to error handler. But here is the message:',err); } } では、引数がエラーのインスタンスであるかどうかを判断する最良の方法は何ですか? instanceofヘルプのオペレーターは何ですか?

24
キーでオブジェクトの配列をグループ化する方法
誰かがオブジェクトキーによってオブジェクトの配列をグループ化し、そのグループ化に基づいてオブジェクトの新しい配列を作成する(可能であればロダッシュ)方法を知っていますか?たとえば、車のオブジェクトの配列があります。 var cars = [ { 'make': 'audi', 'model': 'r8', 'year': '2012' }, { 'make': 'audi', 'model': 'rs5', 'year': '2013' }, { 'make': 'ford', 'model': 'mustang', 'year': '2012' }, { 'make': 'ford', 'model': 'fusion', 'year': '2015' }, { 'make': 'kia', 'model': 'optima', 'year': '2012' }, ]; 次のようにグループ化された自動車オブジェクトの新しい配列を作成したいと思いますmake。 var cars = …

14
文字列の最初と最後からスペースを削除
タイトル文字列の最初と最後からスペースを削除する方法を見つけようとしています。私はこれを使用していましたが、動作していないようです: title = title.replace(/(^[\s]+|[\s]+$)/g, ''); 何か案は?
152 javascript  regex 

2
JavaScriptを使用してdivのコンテンツをクリアするにはどうすればよいですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 2年前休業。 ロックされています。質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答や相互作用を受け入れていません。 ユーザーが自分のページのボタンをクリックすると、divのコンテンツがクリアされます。これを達成するにはどうすればよいですか?
152 javascript  html  css 

4
パラメータを使用したBackbone.jsフェッチ
ドキュメントに従って、私はしました: var collection = new Backbone.Collection.extend({ model: ItemModel, url: '/Items' }) collection.fetch({ data: { page: 1} }); URLは次のようになります: http://localhost:1273/Items?[object%20Object] のようなものを期待していた http://localhost:1273/Items?page=1 では、fetchメソッドでどのようにパラメータを渡すのですか?

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