サイボウズOffice6の予定の登録で今の時間をワンタッチで入れる
前もちょっとサイボウズグループウエアをいじったけど
サイボウズOffice6の出社ボタンを自動で押す - purazumakoiの[はてな]
今回は予定の登録で
ボタンを押すと今の時間が入るようにする。(厳密にはちょいちがうけども)
といっても分は15分単位という仕様なので、30分かどうかで時を調整
document.forms[1]とかの番号にしないと動かないのはなぜだろうー?
// ==UserScript== // @name hogehoge time_add // @namespace http://d.hatena.ne.jp/purazumakoi/ // @description 時間を現在に // @include http://192.168.1.*** // ==/UserScript== (function() { // ボタン入れ用に作るdiv名 var nodeName = 'dButtonArea'; // 起動ファンクション function fInit(){ var divTags=document.getElementsByTagName("div"); for (var i=0; i<divTags.length; i++){ var obj = divTags[i]; var className = obj.getAttribute('class'); // classがmarginFullだったら if(className == "marginFull"){ // div要素をcreate var newNode = document.createElement("div"); newNode.id = nodeName; // div class="marginFull" の直前に新ノードを作成 obj.parentNode.insertBefore(newNode, obj); // ボタン群を作成 fMakeButton(); break; } } } // ボタンを作成 function fMakeButton(){ var input = document.createElement("input"); input.type="button"; input.name="nowtime"; input.id="nowtime"; input.value="今の時間!"; //input.setAttribute("onclick", "fBtn01(); return false;"); input.addEventListener('click', function() { fBtn01() }, false); var element = document.getElementById(nodeName); element.appendChild(input); } // ボタン01 function fBtn01(){ var now_time = new Date(); var hour = now_time.getHours() + 2; if(now_time.getMinutes() >= 30) hour++; // 開始 時 document.forms[1].elements[16].selectedIndex = hour; // 開始 分 document.forms[1].elements[17].selectedIndex = 1; } // 起動!! fInit(); })();
参考にしたところ
addEventListenerの関係で
GreaseMonkeyでonclickが使えなくてはまった - emergentのJavaScript入門日記 - g:javascript
↑のページの流れで。中身はよくはわかりませんが
XPCNativeWrapper - MDC