Оптимизацией потом заняться можно. Касательно $(this) — тут да, стоило бы закешировать. Хотя по сути можно передать this в append у таргета и тогда вызов был бы один.
А что до parents — ну тут да, конкретно в этом случае смысла применять parents нету. Просто что-то под вечер мозг тормозит.