Variable-weight Optical orthogonal code (OOC) was introduced by G-C Yang for multimedia optical CDMA systems with multiple quality of service (QoS) requirement. In this paper, a construction for optimal variable-weight OOCs via cyclic difference families is given. Several new constructions for cyclic difference families are also given. By using these constructions, new optimal (n,W,1, Q)-OOCs for 2 <= vertical bar W vertical bar 4 are constructed.