Time synchronization is an indispensable piece of infrastructure in sensor networks. As the limited resource of the sensor nodes, energy efficiency become a main concern of the wireless sensor networks. In this paper , a spanning subtree based event-triggered time synchronization algorithm for sensor networks is proposed. Firstly , a spanning tree construction starts and the spanning tree is divided into multi-subtrees after an event. Secondly, the time synchronization starts and the traditional exchanging synchronization signal way is improved.The simulation results show that the algorithm decreases the number of data packets transmitted and achieves desired energy efficiency .