add option 'isFixed' and code optimization