Added an initElement() method to allow components to customize the way which they are initialized