htmlでアプリが作れるmonacaでjavascriptの記述で質問です。
html,javascriptを書いたのはこれが初めてな超初心者です・・・
この人の青春時代の曲とイベントをケンサク!
というリンクを作っているのですが、このリンクをクリックすると、
アプリ内ブラウザで生成したURLを開きたいです・・・
調べたところによるとwindow.openを使えばいいとのことですが、
どこに入れればいいのか全く分からず困りました。。。。
よろしくお願いします。
html
1<!DOCTYPE HTML> 2<html> 3<head> 4 <meta charset="utf-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> 6 <meta http-equiv="Content-Security-Policy" content="default-src * data:; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'"> 7 <script src="components/loader.js"></script> 8 <link rel="stylesheet" href="components/loader.css"> 9 <link rel="stylesheet" href="css/style.css"> 10 <script> 11 $(function(){ 12 var output = $('#sample2_output'); 13 //ファイル選択の変更イベント 14 $('#sample2_input').on('change', 'input', function(event){ 15 //前回の処理結果をクリアする。 16 output.empty(); 17 var reader = new FileReader(); 18 reader.onload = (function(theFile) { 19 return function(e) { 20 var dataurl = e.target.result; 21 22 //DataURLをBLOBに変換 23 var mime_base64 = dataurl.split(',', 2); 24 var mime = mime_base64[0].split(';'); 25 mime = mime[0].split(':'); 26 mime = mime[1]? mime[1]: mime[0]; 27 var base64 = window.atob(mime_base64[1]); 28 var len = base64.length; 29 var bin = new Uint8Array(len); 30 for (var i=0; i<len; i++) 31 { 32 bin[i] = base64.charCodeAt(i); 33 } 34 var blob = new Blob([bin], {type:mime}); 35 //APIのURLパラメタを設定 36 var params = { 37 'subscription-key': '秘密のプライマリキー' 38 ,analyzesAge: 'true' 39 ,analyzesGender: 'true' 40 }; 41 $.ajax({ 42 url: 'https://api.projectoxford.ai/face/v0/detections?' + $.param(params) 43 ,type: 'POST' 44 //contentTypeを明示する 45 ,contentType:'application/octet-stream' 46 //processDataをfalseにして自動処理せずBLOBをPOSTする 47 ,processData:false 48 ,data:blob 49 }) 50 .done(function(data) { 51 //選択画像のDataURLで画像を生成 52 $('<img />').attr('src', dataurl).appendTo(output); 53 //検出した顔の分だけ繰り返す 54 $.each(data, function(){ 55 var face = this.faceRectangle; 56 var attr = this.attributes; 57 //顔を囲む矩形のdivを追加 58 $('<div class="f" />').css({ 59 left:face.left*0.24 60 ,top:face.top*0.24 61 ,width:face.width*0.24 62 ,height:face.height*0.24 63 }) 64 .appendTo(output); 65 66 //性別と年齢のdivを追加 67 $('<div class="a" />').css({ 68 left:face.left*0.24 69 ,top:(face.top*0.24+ face.height*0.24) 70 }) 71 .text(attr.gender +' '+ attr.age) 72 .appendTo(output); 73 74 output.append('<a href="http://music.oricon.co.jp/php/special/Special.php?y='+(2015-attr.age)+'&m=4&age=17&pcd=result&dir=timeslip' + '">この人の青春時代の曲とイベントをケンサク!:</a>' + attr.gender + attr.age + '歳' + '</p>'); 75 //window.open("'http://music.oricon.co.jp/php/special/Special.php?y='+(2015-attr.age)+'&m=4&age=17&pcd=result&dir=timeslip'"); 76 navigator.notification.alert(attr.gender +' '+ attr.age+'ですね!', null, "この写真の人の性別と年齢はズバリ!"); 77 }); 78 }) 79 .fail(function() { 80 alert('error'); 81 }); 82 }; 83 })(event.target.files[0]); 84 reader.readAsDataURL(event.target.files[0]); 85 }); 86}); 87 </script> 88</head> 89<body> 90<br> 91<br> 92<br> 93<br> 94 95<label>Subscription Key(Primary key): <input type="text" id="sample2_key" /></label> 96<div id="sample2_input"> 97 <label>顔写真: <input id="sample2_input" type="file"/></label> 98</div> 99<div id="sample2_output"></div> 100 101 102</body> 103</html> 104
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。