Se l'evento scatenante l'apertura DEVE essere il click, devi per forza usare JS.
Certamente non servono 100 funzioni, ne basta una a cui passi un riferimento(*).

PERO`
tieni presente che un JS di tale tipo e` intrusivo, cioe` se il brwoser non ha JS (o e` disattivato) l'utente non puo` leggere il testo. Quindi se vuoi usare JS devi usare qualche trucco per rendere la cosa accessibile.

Se invece ti basta l'evento mouseover, esiste anche in CSS (si chiama :hover) e con alcuni accorgimenti si puo` far funzionare in tutti i browser.


(*) Ecco un esempio di JS con passaggio parametro:
show more
Poi il JS deve decodificare il parametro passato, e risalire all'oggetto da aprire/modificare (potrebbe essere il padre di "this" o il nonno a seconda di come e` la marcatura).