Это связано с тем, что при использовании Prototype элементы не расширяются автоматически с помощью функций Prototype при загрузке страницы в IE, им, в частности, приходится проходить через вызов $()
для расширения элементов с помощью этих методов. Добавьте это в начало вашей функции, чтобы она работала в IE.
doIt : function(str, btn) {
btn = $(btn);
}
Редактировать: Для пояснения, во всех браузерах, кроме IE 7 (iirc) и ниже, HTML-элементы будут прототипироваться автоматически, но в IE <= 7 они должны проходить через функцию <code>$(), чтобы иметь эти прототипы применяются.