alcをちょっと便利にするGreasemonkey User Script ... が動かない。

アルク英辞郎で検索したときに、前に検索したキーワードを消すのが面倒なの人のためのGreasemonkeyスクリプト

 // ==UserScript==
 // @name           AlcSearchEraser
 // @namespace      suztomo.net
 // @description    Make alc Eijiiro more useful
 // @include        http://eow.alc.co.jp/*
 // ==/UserScript==
 
 
 (function() {
    eraseFirstValueByClass("j12");
    function eraseFirstValueByClass(className){
	var classElements = [];
	var elements = document.getElementsByTagName("*");
	var flag = true;
	for(var i = 0; i < elements.length && flag; i++)
	    if(elements[i].getAttribute("class") == className){
		classElements.push(elements[i]);
		elements[i].value = "";
		flag = false;
	    }
	return classElements;
    }
  })();

きたなすぐる。なぜか下で動かない。

 (function() {
   document.fm1.q.value = "";
 })();

document.fm1 has no propertyって言われる。JavaScriptの実行のタイミングよくわからんです。