蒂亚娜(Tiana)是个从不相信童话的女孩子,具有烹饪天赋的她最大的目标便是开一家属于自己的餐厅,多年来她一直努力赚钱,希望够自己的双手去实现梦想。可是就在她即将攒够钱的那天晚上,她遇到一只自称是王子马文(Naveen)的青蛙,他说自己是被影子人施了魔法并且许诺只要蒂亚娜吻他,那么他就可以帮蒂亚娜实现梦想。可是当蒂亚娜吻完青蛙,青蛙并没有变成马文王子,蒂亚娜却变成了一只青蛙。他们在躲避坏人的追赶时遇到喜欢演奏爵士乐的鳄鱼路易斯和荧火虫雷蒙,他们决定一起去密西西比河河口找女巫妈妈沃提帮忙。邪恶的影子人派出大批的影子杀手已经追上了这一行人,在紧要关头,妈妈沃提出现救了他们并且告诉了他们如果要变会人类,马文就必须去亲吻真正的公主夏洛特。可是此时马文在和蒂亚娜相处的过程中早已经爱上了这个执着的女孩子……。在巴索(杰瑞德·莱托 Jared Leto 饰)很小的时候,他的母亲就去世了,在专制严苛的父亲的冷血教育之下,巴索长大成人并且进入了牛津大学深造。一次偶然中,巴索解释了名叫约翰(克里斯汀·史莱特 Christian Slater 饰)的男子,并且在约翰的介绍下认识了茱莉亚(克莱尔·弗兰妮 Claire Forlani 饰),巴索不可自持的爱上了茱莉亚。 然而,两人的这段感情遭到了巴索父亲的强烈反对,因为巴索和茱莉亚所处的根本就不是一个阶级,可即便如此,巴索还是坚定的选择了茱莉亚。让巴索没有想到的是,原来茱莉亚和约翰在私底下有奸情,当茱莉亚的父亲告诉巴索茱莉亚腹中怀着他的孩子时,巴索会做出怎样的选择呢?。