updated js methods and introduced a custom html5 tag