Melt the butter in a large skillet or Dutch oven over medium heat. Saute onions in butter until translucent. Stir in the sauerkraut and cola.
Cover, reduce heat to low, and simmer for 1 hour, adding up to 1/2 cup of water if necessary to prevent sticking. Remove cover and increase heat to medium for at least 15 minutes, or until most of the juice cooks down, and the sauerkraut glistens.