//【登録場所】 選択テキスト //【ラベル】 yahoo〇〇辞書 //【内容】 yahoo国語、英和、和英、類語辞書のポップアップ //【コマンド】 $SCRIPT ydic.js 0 //※引数(コマンドの末尾の数字)によってどの辞書を使うかが決まる //※引数(国語:0、英和和英:1、類語:5) //【更新日】 2013/12/20 リダイレクトの //【元URL】 http://y...content-available-to-author-only...0.kg/test/read.cgi/v2cj/1252074124/15,466 //【スクリプト】 var vcx = v2c.context; createPopupString(); function createPopupString() { var ss = vcx.selText; if (ss) { ss = ss.trim(); } if (!ss||(ss.length()==0)) { v2c.alert('検索語を取得できませんでした。'); return; } var args = vcx.args; var id = (args.length>0)?args[0]:'0'; var dicId = ''; switch (parseInt(id)) { case 0: dicId = 'jj'; break; case 1: dicId = 'ejje'; break; default: dicId = 'etc'; break; } var sh = v2c.readURL('http://d...content-available-to-author-only...o.jp/dsearch?p=' +encodeURIComponent(ss)+'&stype=prefix&dic_id='+dicId); var mr = /
([\s\S]+)/i.exec(sh); if (!mr) { v2c.alert('説明を抽出できませんでした。'); return; } vcx.setPopupHTML(''+mr[0]+''); vcx.setRedirectURL(true); } function redirectURL(u) { var sh = v2c.readURL(u); if (!sh) { v2c.alert('ページを取得できませんでした。'); return; } var mr = /
  • ([\s\S]*?)<\/li>/.exec(sh); if (!mr) { mr = /
    ([\s\S]*?)<\/div>/.exec(sh); } if (!mr) { v2c.alert('説明を抽出できませんでした。'); return; } var repHtml = mr[0]; var host = /meta property="og:url" content="(http:\/\/[^\/]+)/.exec(sh); if (host) { host = host[1]; } repHtml = repHtml.replace(/href="/g, 'href="' + host); v2c.println(repHtml); vcx.setRedirectURL(true); vcx.setPopupHTML(''+repHtml+''); }