明朝时期,安庆有个叫林诗茵的寡妇,靠着两亩地维持营生,下地忙活时,一只身受重伤的毛驴朝她走过来,还跟她回了家,每日窝在棚子里不肯离去。林诗茵心地善良,早已给毛驴包扎好伤口。
毛驴身上的伤好后,整日都无精打采,突然在夜深人静的夜晚郁郁而终。林诗茵好心将它安葬后,就做了一个怪梦,梦中毛驴站在她跟前,声称他就是林诗茵的丈夫凌末风。
事情要从半年前说起,彼时的林诗茵不仅生得如花似玉,还好打扮,每日收拾得花枝招展在外面晃悠,引来一批小伙的围观,其中一名小伙叫申屠洪,年过三十还没有成婚,他是林诗茵的邻居,为人有些贪财好色。

自从申屠洪得知林诗茵家住隔壁,就每日上门叨扰,时不时送来些吃食,胭脂水粉,用以讨得林诗茵欢心,然而林诗茵已婚,要和外面的男子保持距离,没有收下申屠洪的礼物,还多次劝他不要再上门。
可林诗茵的话对申屠洪没有作用,她关上家门,房门也锁死,申屠洪还是会先翻墙,再跳窗进来。
凌末风是个生意人,他半年来难得回家一次,傍晚刚到家就听到林诗茵的哭诉,申屠洪要对她行不轨之事,凌末风气得摔碎两个茶碗,准备翌日即将他告上官府。

半夜,林诗茵起夜去茅房,回来发现房内有个黑衣人,脸上涂抹着浓厚的胭脂水粉,操起一柄尖刀朝着床上刺去,事毕翻窗出了家。借着微弱的月光,林诗茵隐约能分辨出黑衣人是申屠洪。
林诗茵走到床边时,发现床上的凌末风已经气绝身亡,她伤心欲绝地趴在凌末风身上痛哭流涕,回想起方才发生的一切,八成是申屠洪想要将她占有,却碍于凌末风没能如愿,就对凌末风痛下杀手。
翌日,林诗茵将她目睹到的一切,全都告诉了县太爷,让他主持公道,县太爷当场下令将申屠洪缉拿归案,却由于缺乏物证,只能将申屠洪先押入牢房。

申屠洪想着他把脸涂花,就没有人能分辨出他的身份,却不成想还是被林诗茵给认出,事到如今不知该如何是好。这时他的表兄楚千里来牢房探监,得知申屠洪的所作所为,对他也是深恶痛绝,可他们毕竟是亲信,楚千里要把申屠洪救出来。
楚千里所在的村庄有个强盗,烧杀劫掠无恶不作,前几日才被县衙逮捕到,楚千里在牢房找到强盗,声称要给强盗妻儿五十两银子,让他们母子好好生活,只需强盗主动在县太爷面前承认,是他杀害了凌末风。
强盗本身就是死刑犯,也不介意罪加一等,且他又疼爱妻儿,就答应楚千里的请求,按照楚千里的说法,将作案过程在县太爷面前叙说一遍,县太爷信以为真,遂将申屠洪释放。

释放后的申屠洪收敛了些,不再大张旗鼓叨扰林诗茵,却还是会到林诗茵家中去,每次都趁着夜深无人之际,且凌末风也不在世,他动手都方便了不少。
然而死后的凌末风身上都是怨气,魂魄一直游荡在阳间,撞见一只毛驴的尸身,就进入毛驴体内,回到林诗茵身边,趁机教训申屠洪,每次申屠洪半夜到家来,毛驴都狠狠将申屠洪撞倒在地,撵着他满院子跑,将申屠洪弄得不敢露面。
可这种追打申屠洪的方式颇费体力,毛驴每次都累得气喘吁吁,无精打采,毛驴觉得这样也不是个办法,就决定先下手为强,潜入申屠洪家中,将申屠洪追赶着不慎跌入枯井,一命呜呼。

而今凌末风身上的怨气全都化解,魂魄不能够继续留在人世,就准备从毛驴体内出来,要到阴曹地府转世投胎,走之前特意和林诗茵道别。
话罢,林诗茵从梦中惊醒,流了满脸的泪水,翌日到枯井旁查看,果真发现申屠洪的尸身。
村民们将申屠洪的尸身捞出来,找个地方安葬。

其实在毛驴变得无精打采后,林诗茵曾暗中观察过毛驴,也发现了毛驴在顶撞申屠洪,还包括申屠洪在外面欺辱其他女子。
此后林诗茵一直守在家中,不到必要的时候都不出门,和外面的男子断绝往来,直到守丧三年期满,才找了个木匠改嫁。