wp8 の webbrowser コントロールにロードされた web サイトからいくつかの変数を読み取りたいです。私は HTML スクリプトを安全に扱うことができません。したがって、「webBrowser.InvokeScript」などで可能かどうかはわかりません。
サイトは次のようになります。
<html class="no-js mobile">
<head><script type="text/javascript">var NREUMQ=NREUMQ||[];NREUMQ.push(["mark","firstbyte",new Date().getTime()]);</script>
<title>test</title><meta content="width=320, initial-scale=1.0, user-scalable=no" name="viewport">
<script>
//<![CDATA[
window.current_ip = '31.17.30.54';
//]]>
</script>
<script>
//<![CDATA[
window.current_checkout = "{"id":0,"domestic":false,"amount":0.0,"updated_at":0,"created_at":0}";
//]]>
</script>
<script type="text/javascript">
var _sift = _sift || [];
_sift.push(['_setAccount', '637102']);
_sift.push(['_setUserId', '1878617619']);
_sift.push(['_trackPageview']);
(function() {
function loadSift() {
var sift = document.createElement('script');
sift.type = 'text/javascript';
sift.async = true;
sift.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'dtlilztwypawv.cloudfront.net/s.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(sift, s);
}
if (window.attachEvent) {
window.attachEvent('onload', loadSift);
} else {
window.addEventListener('load', loadSift, false);
}
})();
</script>
</head>
誰かが私を半分にしてくれたら本当に嬉しいです!
編集 - - - - - - - - - -
解決に一歩近づいたと思います。私は成功してこのコードを実行します:
webBrowser.InvokeScript("eval", "newfunc_getmyvalue = function() { return 'hello'; }");
string s1 = (string)webBrowser.InvokeScript("newfunc_getmyvalue");
「window.current_checkout = ...」が正確に何をするのかを知る必要があるだけですか? 本当に変数を設定していますか?また、「hello」スクリプトを変更してこの値を返すにはどうすればよいですか?