From German Schlappschwanz, from schlapp (“limp, weak”) + Schwanz (“cock, dick, penis”, literally “tail”). Sometimes reinterpreted as slap (“limp, weak”) + svans (“faggot, sissy”).
slapsvans