JavaScript
- javascriptの{}の表現は2つ可か不可か?
<!--HTMLここまで--> <!--問題--> <br> <hr> <br> <!--阪和線--> <body> <form name="semboku_f"> 出発駅は <select name="semboku_q1"> <option>選択肢</option> <option>中百舌鳥</option> <option>深井</option> <option>泉ケ丘</option> </select> です。 <p> 到着駅は <select name="semboku_q2"> <option>選択肢</option> <option>中百舌鳥</option> <option>深井</option> <option>泉ケ丘</option> </select> です。<p> <script> function fare_kotae() { fare_ten=0 if((fare_f.fare_q1.value == "中百舌鳥"&&fare_f.fare_q2.value == "深井")||(fare_f.fare_q1.value == "深井"&&fare_f.fare_q2.value == "中百舌鳥")) {fare_f.fare_q1.style.backgroundColor="aqua ";fare_ten = fare_ten + 3.7} else if((fare_f.fare_q1.value == "中百舌鳥"&&fare_f.fare_q2.value == "泉ケ丘")||(fare_f.fare_q1.value == "泉ケ丘"&&fare_f.fare_q2.value == "中百舌鳥")) {fare_f.fare_q1.style.backgroundColor="aqua ";fare_ten = fare_ten + 7.8} else fare_f.fare_q1.style.backgroundColor="red" fare_f.fare_tokuten.value=fare_ten if((fare_f.fare_tokuten.value=3)&&((fare_f.fare_q1.value == "中百舌鳥"&&fare_f.fare_q2.value == "深井")||(fare_f.fare_q1.value == "深井"&&fare_f.fare_q2.value == "中百舌鳥"))) {fare_f.fare_futsu_otona.value = Number("1000")} else if((fare_f.fare_tokuten.value=78)&&((fare_f.fare_q1.value == "中百舌鳥"&&fare_f.fare_q2.value == "泉ケ丘")||(fare_f.fare_q1.value == "泉ケ丘"&&fare_f.fare_q2.value == "中百舌鳥"))) {fare_f.fare_futsu_otona.value = Number("3000")} </script> とあるとき、 {fare_f.fare_futsu_otona.value = Number("1000")}は、1つしか並べませんか。 これができなくてすごく困っています。 詳細なjavascript分を省略せずにお書きください。
- ベストアンサー
- JavaScript
- semboku_love
- 回答数3
- WordPressの質問(q10197680)の続
DOM-based XSS に関するコードについて考えているのですが、関数の「巻き上げ」が可読性と保守性を損なうようで funcion について修正すべきか考えております。 関数宣言を関数式にして const 変数に代入する方法で修正してみたのですが問題はなさそうでしょうか? 57、62、109、212行目を変更いたしました。 ※関数宣言での巻き上げについて https://qiita.com/kerupani129/items/b2c3619856b048c13394 ※DOM-based XSSのシンクとして働く機能 https://gihyo.jp/dev/serial/01/javascript-security/0006 ※以前アドバイス頂いたコード ※元のコード function lengthCheck() { const left = this.dataset.maxlength - this.value.length; if (left >= 0) { this.nextElementSibling.innerHTML = 'あと<strong>' + left + '</strong>文字'; this.dataset.submit_disabled = this.value.length === 0; } else { this.nextElementSibling.innerHTML = '<strong>' + -left + '</strong>文字超過しています'; this.dataset.submit_disabled = true; } ↓ ※エスケープ処理 function escapeHTML(値) { _ var a = document.createElement('span'); _ a.textContent = 値; _ return a.innerHTML; } 要素.innerHTML = '<strong>' + escapeHTML(文字列) + '</strong>'; ※最新コード https://wandbox.org/permlink/ozofFRK7rkjCXV76
- ベストアンサー
- JavaScript
- php_learn
- 回答数19
- matter.jsのイベントについて教えてください
いろいろなサイトのサンプルコードを参考にさせていただきながら、matter.jsを使って物理エンジンでの表現を勉強してます。なんとか、20個のボールを生成し、それぞれにラベルで番号をふりました。そのボそのボールをクリックして、どのボールをタッチしたのかをalertで表示させようとしているのですが、以下のコードでうまくいきません。どのようにすればよいでしょうか? <!doctype html> <html> <head> <meta charset="utf-8"> <title>matter.js demo</title> <script src="matter.js"></script> </head> <body> <div id="matter"></div> <script> const engWidth = 680; const engHeight = 400; const wall = 10; const ball = 20; var ballSize = 20; var objs = []; var engine = Matter.Engine.create(document.getElementById("matter"), { render: { options: { wireframes: false, width: engWidth, height: engHeight, background: "rgba(0, 0, 0, 1)" } } }); objs.push(Matter.Bodies.rectangle(engWidth/2, wall/2, engWidth, wall, {isStatic: true})); objs.push(Matter.Bodies.rectangle(engWidth-wall/2, engHeight/2, wall, engHeight, {isStatic: true})); objs.push(Matter.Bodies.rectangle(engWidth/2, engHeight-wall/2, engWidth, wall, {isStatic: true})); objs.push(Matter.Bodies.rectangle(wall/2, engHeight/2, wall, engHeight, {isStatic: true})); for (var i = 0; i < ball; i++) { var x = Math.random()*engWidth; var y = Math.random()*engHeight; // ボールに番号のラベルをつける objs.push(Matter.Bodies.circle(x, y, ballSize, { label: i, render:{ fillStyle: "#FFFFFF", } })); } Matter.World.add(engine.world, objs); var MouseConstraint = Matter.MouseConstraint; // マウスドラッグではなく、マウスクリックのイベントを設定する var mouseclick = MouseConstraint.create(engine, { element: document.getElementById("matter").childNodes[0], constraint: { stiffness: 0.2, render: { visible: false } } }); Matter.World.add(engine.world, mouseclick); // マウスクリックしたボールの番号をalertで表示する Matter.Events.on(mouseclick, 'mousedown', function(e) { alert("You clicked on ball number " + e.body.label); }); Matter.Engine.run(engine); </script> </body> </html>
- 締切済み
- JavaScript
- dkong
- 回答数1
- matter.jsについて教えてください。
いろいろなサイトのサンプルコードを参考にさせていただきながら、matter.jsを使って物理エンジンでの表現を勉強してます。なんとか、10個のボールを生成し、そのボールを掴んで移動するところまではできました。ボールを掴んで移動させるのではなく、10個を区別して、どのボールをタッチしたのかを表示させていのですが、どのようにすればよいでしょうか? <!doctype html> <html> <head> <meta charset="utf-8"> <title>matter.js demo</title> <script src="matter.js"></script> </head> <body> <div id="matter"></div> <script> const engWidth = 680; const engHeight = 400; const wall = 10; const ball = 20; var ballSize = 20; var objs = []; var engine = Matter.Engine.create(document.getElementById("matter"), { render: { options: { wireframes: false, width: engWidth, height: engHeight, background: "rgba(0, 0, 0, 1)" } } }); objs.push(Matter.Bodies.rectangle(engWidth/2, wall/2, engWidth, wall, {isStatic: true})); objs.push(Matter.Bodies.rectangle(engWidth-wall/2, engHeight/2, wall, engHeight, {isStatic: true})); objs.push(Matter.Bodies.rectangle(engWidth/2, engHeight-wall/2, engWidth, wall, {isStatic: true})); objs.push(Matter.Bodies.rectangle(wall/2, engHeight/2, wall, engHeight, {isStatic: true})); for (var i = 0; i < ball; i++) { var x = Math.random()*engWidth; var y = Math.random()*engHeight; objs.push(Matter.Bodies.circle(x, y, ballSize, { render:{ fillStyle: "#FFFFFF"} })); } Matter.World.add(engine.world, objs); var MouseConstraint = Matter.MouseConstraint; var mousedrag = MouseConstraint.create(engine, { element: document.getElementById("matter").childNodes[0], }); Matter.World.add(engine.world, mousedrag); Matter.Engine.run(engine); </script> </body> </html>
- 締切済み
- JavaScript
- dkong
- 回答数1
- 【JavaScript?HTML?】Webページで
【JavaScript?HTML?】Webページでこのページは戻ることは出来ませんと表示されました。 どうやったら、Webブラウザの戻るボタンを無効に出来るのですか?
- ベストアンサー
- JavaScript
- redminote10pro
- 回答数1
- JavaScriptでコメントのsubmit
作成したスクリプト let com = document.getElementById('message_input'); com.value = 'test' + Math.random(); document.getElementById('messageForm').submit(com); html <form method="post" id="messageForm" action="/m/player.php" style="margin-bottom:2px"> <input type="hidden" name="token" value="a9f182c41fb15b7858db5fee732d4ec2a280191310fa650866b365d76ef718e2"> <input type="hidden" name="mode" value="post_message"> <input type="hidden" name="to_user" value="ALL"> <div class="input-append" style="width:90%;margin:0px;"> <input class="span2" type="text" id="message_input" name="message" style="width:70%" autocomplete="off" value="" placeholder="全員に発言"> <a href="/m/player.php?inputMultiline=1" title="複数行にする" class="btn"><i class="icon-align-justify"></i></a> <input class="btn" type="submit" value="発言"> ちゃんと打ち込んで読み込みが入るのですがコメントが投稿されてません。どうすればいいでしょうか?
- 締切済み
- JavaScript
- shimoshimo0204a
- 回答数1
- JavaScriptでのpost送信
JavaScriptでメッセージのpost送信は行えますか? またできるのであれば例を挙げてほしいです。 回答よろしくお願いします。
- 締切済み
- JavaScript
- shimoshimo0204a
- 回答数1
- jsを書き換えてgifができるようにしたい
function handleFiles(files) { l("アイコン変更!!1"); if (files.length > 0) { l("アイコン変更!!2"); var file = files[0]; if (typeof FileReader !== "undefined" && file.type.indexOf("image") != -1) { l("アイコン変更!!3"); var reader = new FileReader(); reader.onload = function(evt) { load(evt.target.result) } ; reader.readAsDataURL(file) } } } function load(src) { l("アイコン変更!!load"); img = new Image(); img.onload = function() { analyze() } ; img.src = src } function analyze() { l("アイコン変更!!analyze"); if (!img) return; SmartCrop.crop(img, { width: 100, height: 100, debug: false }, draw) } function draw(result) { l("アイコン変更!!draw"); selectedCrop = result.topCrop; drawCrop(selectedCrop) } function drawCrop(crop) { l("アイコン変更!!drawCrop"); canvas.width = 100; canvas.height = 100; ctx.drawImage(img, crop.x, crop.y, crop.width, crop.height, 0, 0, canvas.width, canvas.height); img_src = canvas.toDataURL(); var img_tag = $('<img>').attr('src', img_src); $('#file_span').html(img_tag); $('#b_change_profile').prop('disabled', false) } function img_selected_clear() { $('img.selected', '#icon_table').each(function() { $(this).removeClass('selected') }) } function emit_change_icon_name() { var data = {}; data.selected_my_icon = selected_my_icon; data.character_name = $("#ipt_change_character_name").val(); socket.json.emit('change_icon_name', data) } $(function() { $('#canvas_wrap').hide(); $('#i_file').change(function(e) { handleFiles(this.files) }); これをどう書き換えれば画質制限の突破やgifの搭載ができるでしょうか。 回答よろしくお願いします。
- 締切済み
- JavaScript
- shimoshimo0204a
- 回答数1
- Jsで次の工程に進むのに一定時間待つみたいな
let sakusei = document.getElementById('b_change_room'); let change = document.getElementById('b_change_room_info'); let name = document.getElementById('i_room_name'); let element = document.getElementById('comment'); let a = new Event('mousedown'); let e = new Event('mouseup'); let target = document.getElementById('b_send'); for (let step = 0; step < 100; step++) { change.dispatchEvent(a); change.dispatchEvent(e); name.value = "トイレ清掃中 " sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = "イレ清掃中 ト" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = "レ清掃中 トイ" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = "清掃中 トイレ" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = "掃中 トイレ清" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = "中 トイレ清掃" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = " トイレ清掃中" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = " トイレ清掃中" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = " トイレ清掃中" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = " トイレ清掃中" sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); change.dispatchEvent(a); change.dispatchEvent(e); name.value = "トイレ清掃中 " sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); }; 動くのが早すぎて困ってます。 一回(changeからsakuseiまで)ごとに0.5秒待つみたいなことはどうやれば出来ますか? 回答よろしくお願いします。
- 締切済み
- JavaScript
- shimoshimo0204a
- 回答数4
- このjsはどういうことですか?
function handleFiles(files) { l("アイコン変更!!1"); if (files.length > 0) { l("アイコン変更!!2"); var file = files[0]; if (typeof FileReader !== "undefined" && file.type.indexOf("image") != -1) { l("アイコン変更!!3"); var reader = new FileReader(); reader.onload = function(evt) { load(evt.target.result) } ; reader.readAsDataURL(file) } } } function load(src) { l("アイコン変更!!load"); img = new Image(); img.onload = function() { analyze() } ; img.src = src } function analyze() { l("アイコン変更!!analyze"); if (!img) return; SmartCrop.crop(img, { width: 100, height: 100, debug: false }, draw) } function draw(result) { l("アイコン変更!!draw"); selectedCrop = result.topCrop; drawCrop(selectedCrop) } function drawCrop(crop) { l("アイコン変更!!drawCrop"); canvas.width = 100; canvas.height = 100; ctx.drawImage(img, crop.x, crop.y, crop.width, crop.height, 0, 0, canvas.width, canvas.height); img_src = canvas.toDataURL(); var img_tag = $('<img>').attr('src', img_src); $('#file_span').html(img_tag); $('#b_change_profile').prop('disabled', false) } function img_selected_clear() { $('img.selected', '#icon_table').each(function() { $(this).removeClass('selected') }) } function emit_change_icon_name() { var data = {}; data.selected_my_icon = selected_my_icon; data.character_name = $("#ipt_change_character_name").val(); socket.json.emit('change_icon_name', data) } $(function() { $('#canvas_wrap').hide(); $('#i_file').change(function(e) { handleFiles(this.files) }); 回答できる方、回答よろしくお願いします。 できれば一つずつ解説してもらえると嬉しいです。
- ベストアンサー
- JavaScript
- shimoshimo0204a
- 回答数1
- JavaScriptでこれはできるのか?
JavaScriptで指定のidのエリアの中にある写真を押すってことはできますかね?
- ベストアンサー
- JavaScript
- shimoshimo0204a
- 回答数3
- net::ERR_TIMED_OUTについて
あるWebアプリでリクエスト時に「net::ERR_TIMED_OUT」がたまに発生(Chromeの開発者ツールのコンソールに表示される)するためエラーのハンドリングするプログラム(javaScript)を書きたいと思っています。そのために以下の2点を行いたいのですが可能でしょうか? 1. 「net::ERR_TIMED_OUT」を意図的に発生させたい 2. 1.で発生した「net::ERR_TIMED_OUT」をハンドリングしたい
- ベストアンサー
- JavaScript
- unko347
- 回答数1
- JavaScriptでループできない
let target = document.getElementById('create_new_user'); let name = document.getElementById('i_new_uname'); let pass = document.getElementById('i_new_passwd'); let pass2 = document.getElementById('i_new_passwd2'); let sakusei = document.getElementById('b_create_user'); let a = new Event('mousedown'); let e = new Event('mouseup'); for (let step = 0; step < 10; step++) { target.dispatchEvent(a); target.dispatchEvent(e); name.value = 'らき⭐︎すた' + Math.random(); pass.value = 'bbbb2' pass2.value = 'bbbb2' sakusei.dispatchEvent(a); sakusei.dispatchEvent(e); } これでループしても一回しか繰り返えされません。なぜでしょうか? ちなみにforの処理の中に他の処理も混ぜたら他の処理はちゃんと動きました。 なぜこれだけ一回しかできないのでしょうか?
- ベストアンサー
- JavaScript
- shimoshimo0204a
- 回答数4
- JavaScriptでの画像ファイルの置き換え
https://netroom.co.jp/socket.io/socket.io.js この中に画像ファイルを置き換えるスクリプトは入っていますか? できればどういう感じで置き換えられてるのか教えて欲しいです🙇 回答よろしくお願いします。
- 締切済み
- JavaScript
- shimoshimo0204a
- 回答数1
- javascript「連結難しい」
// ---------------------------------------- // [文字列 - 連結3] // ---------------------------------------- // 文字列fooとbarを連結して出力してください let foo = "Hello "; let bar = "World"; console.log(); console.log("foo"+"bar");は違います。文字列fooとbarする方法は何でしょうか。
- 締切済み
- JavaScript
- noname#259900
- 回答数2
- JavaScript変数
// ---------------------------------------- // [変数 - 右辺が変数を使った式2] // ---------------------------------------- // 変数a2に変数aの値を2倍した結果を代入してください let a = 256; let a2 =; console.log("aを2倍すると" + a2); let a2 = a % 2 === 0;は違います。 変数a2に変数aの値を2倍した結果になるのでしょうか?
- 締切済み
- JavaScript
- noname#259900
- 回答数2
- JavaScript(文字列aとbを連結)
// [文字列 - 連結1] // ---------------------------------------- // 文字列aとbを連結して出力してください let a = "paiza"; let b = "learning"; console.log(); console.log(a+b);やconsole.log(`a+b`);は違います。文字列aとbを連結する方法は何でしょうか?
- 締切済み
- JavaScript
- noname#259900
- 回答数4
- javascriptでこれは押せますか?
<input class="btn" type="submit" value="発言"> javascriptでこれは押せますか? これが押したいボタンなんですけどidが無いので押せません。 classも他にも同じクラスが大量にあるのでどうすればいいのかわかりません。 回答よろしくお願いします。
- 締切済み
- JavaScript
- shimoshimo0204a
- 回答数2
- JavaScriptの質問です。
clickではなくて JavaScriptでボタンをmousedownしてからmouseupする方法はどうするのですか? 回答よろしくお願いします。
- ベストアンサー
- JavaScript
- shimoshimo0204a
- 回答数1
- jsでキーボード入力は同時にできますか?
let EEvent = new KeyboardEvent( "keydown", { keyCode: 40 }); let CEvent = new KeyboardEvent( "keydown", { keyCode: 17 }); document.dispatchEvent( EEvent ); completion(); これだと片方しか発生させられないのですが同時に入力判定を出すスクリプトはありますか?
- ベストアンサー
- JavaScript
- shimoshimo0204a
- 回答数1