しょうが無いので、getElementById().getAttribute("type")がnullだったらdivじゃなイカ?っちゅう感じで判定できるかと試したらそれでなんとか切り分けられたので、nullの場合はinnerHTMLに、not nullの場合は(一応)valueに値を設定するようにして動作確認したらIE8でもIE9でも通りましたよ、ええ。

divでもinputでもない要素だったらどうするのかって話はありますが、それはそんな要素が出てきた時に考えましょう。
そもそも「divであるかどうか」って判断するロジックはあるのか?