読者です 読者をやめる 読者になる 読者になる
無料で使えるシステムトレードフレームワーク「Jiji」 をリリースしました!

・OANDA Trade APIを利用した、オープンソースのシステムトレードフレームワークです。
・自分だけの取引アルゴリズムで、誰でも、いますぐ、かんたんに、自動取引を開始できます。

accesskeyをスクリプトで編集する。

accesskeyじゃなく、accessKeyなので注意な!

document.getElementById("foo").accessKey = "X";
  • "accesskey"でも以下の場合は設定可能で、なんかのバグかなーとか子一時間悩んだ。orz.
    • FireFoxでsetAttribute()で設定した場合(IEでは効果なし)
    • innerHTMLで要素ごと書き換えた場合
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <script type="text/javascript">
    function setAccessKeyI() {
      document.getElementById("link").accessKey = "I";
    }
    function setAccessKeyG() {
      document.getElementById("link").accesskey = "G";
    }
    function setAccessKeyB() {
      document.getElementById("link").setAttribute("accesskey","B");
    }
    function setAccessKeyC() {
     var div = document.getElementById("link").parentNode;
     div.innerHTML = '<a id="link" href="javascript:alert(\'!!!\');"  accesskey="C"'
         + '  onfocus="this.style.color=\'#FF0000\'"'
         + '  onblur="this.style.color=\'#0000FF\'">'
         + '  アクセスキー置換対象のリンク(最初のアクセスキーはX)'
         + '</a>';
    }
  </script>
</head>
<body>
  <ul>
    <li><a href="javascript:setAccessKeyI();">属性指定でアクセスキーをIに変更。</a> → 変更できる</li> 
    <li><a href="javascript:setAccessKeyG();">属性指定でアクセスキーをGに変更。</a> → 属性名が"accesskey"なので無効</li> 
    <li><a href="javascript:setAccessKeyB();">setAttribute()でアクセスキーをBに変更。</a> → FireFoxだと変更できる。IEでは無効</li> 
    <li><a href="javascript:setAccessKeyC();">innerHTMLでアクセスキーをCに変更。</a> → 変更できる</li> 
  </ul>
  <div style="margin-top:10px;">
    <a id="link" href="javascript:alert('!!!');"  accesskey="X" 
      onfocus="this.style.color='#FF0000'"
      onblur="this.style.color='#0000FF'">
      アクセスキー置換対象のリンク(最初のアクセスキーはX)
    </a>
  </div>
</body>
</html>

動作確認はこちらから