陽曰旦是瓊州的一個讀書人。一次,他從別的郡縣返家,乘船行於海上。遭遇到颶風的襲擊,船眼看就要翻了,突然,海上飄來一隻空船,他急忙一躍上去,等他回過頭來一看,剛才的那條船和船上的人都已經沉沒了。風越刮越狂,他閉上眼睛任憑風將船吹得四處漂盪。不一會兒,風停了。他睜開眼睛,忽然看見一座島嶼,島上房屋連成一片。他划著船靠近岸邊,上岸一直走到村莊門口。村子裡靜悄悄的,他走走停停過了好久,連雞犬的聲音都沒有聽到。這時,眼前出現一個門朝北開的院子,院子裡松竹茂密繁盛。此時已是初冬,牆內一種不知名的花,開得滿樹都是。陽曰旦心裡十分喜愛,便慢慢地走進院子。只聽遠處傳來琴聲,他不由地停下了腳步。這時,一個丫環從內院走出來,大約十四五歲的年紀,飄逸灑脫,長得十分豔麗。她一看見陽曰旦,就急忙轉身回到內院。過了一會兒,琴聲就停止了,一個年輕人走了出來,驚訝地問陽曰旦是從哪裡來的,陽曰旦一五一十地告訴了他。年輕人又詢問他的籍貫、姓氏,陽曰旦也告訴了他。年輕人高興地說:“你是我的親戚呀。”說完,就向陽曰旦拱拱手,請他進內院。陽曰旦進了院子,只見院中的房屋極為華麗精美,這時又傳來陣陣琴聲。進到屋內,只見一位少婦正襟危坐,正在調撥琴絃。這位少婦大約十八九歲的樣子,顯得光彩照人。一見有客人進來,她推開琴就要走開。年輕人阻止她說:“不要跑,他正是你家的親戚。”於是代陽曰旦介紹了他的一番情況。少婦說:“你是我的侄子呀。”接著又問道:“祖母還健在嗎?父母今年多大了?”陽曰旦回答道:“父母四十多歲,都沒有什麼病。只是祖母已經年過六旬,病得很久也挺厲害,一舉一動都要由人照顧。侄子實在不知道姑姑屬於哪一房,希望您能明確地告訴我,回家以後好向家人述說。”少婦說:“因為路途遙遠,早已經不通音訊了。你回去以後,只要告訴你父親:‘十姑向你問好。’他自然就會明白了。”陽曰旦問:“姑父是哪裡的人士呢?”年輕人說:“我姓晏,名叫海嶼。這裡名叫神仙島,離瓊州三千里,我流落到這裡的時間也不很長。”十娘走到裡面,讓丫環端出酒菜來接待客人。陽曰旦只覺得菜蔬的味道非常香美,但也不知道叫什麼名字。吃完飯以後,晏海嶼領著陽曰旦到花園散步,只見園子裡桃杏正含苞待放,陽曰旦感到很奇怪。晏海嶼說:“這個地方夏天沒有酷熱,冬天沒有嚴寒,鮮花四季盛開,從不間斷。”陽曰旦高興地說:“這可真是神仙住的地方呀。我回家稟告父母,就把家搬來跟你們做鄰居。”晏海嶼只是微笑著不說話。
他們回到書房,點上蠟燭,只見一張琴放在桌子上,陽曰旦就請晏海嶼彈奏曲子,以助雅興。晏海嶼便撫弦捻柱,準備彈奏。十娘從內室走出來,晏海嶼便說:“來,來!你為你侄子彈奏一曲吧。”十娘便坐了下來,問陽曰旦道:“你想聽什麼曲子?”陽曰旦說:“侄子平時沒有讀過《琴操》,不知道有什麼曲子,實在說不出想聽什麼。”十娘說:“你只管隨意出題,我都可以給你演奏。”陽曰旦笑著說:“海風引導船兒前行,也可以彈出一曲來嗎?”十娘說:“當然可以。”說完,十娘就手指挑撥琴絃,好像有現成的曲譜一樣,意境奔騰豪邁,如同山崩海嘯一般。靜靜地體會,就好像仍然坐在船上,在颶風中隨著海濤搖擺顛簸。陽曰旦驚歎不已,非常傾倒,便問:“我可以學這琴嗎?”十娘把琴遞給他,讓他試著勾撥,說:“當然可以教你。你想學什麼?”陽曰旦說:“你剛才演奏的這曲《颶風操》,不知要用幾天才能學會呢?請先把曲譜抄錄下來,我好吟誦它。”十娘說:“這曲子沒有曲譜,我是用心意來譜成的。”說完,她又取來一張琴,示範一些勾、剔的動作,讓陽曰旦效仿。陽曰旦一直學習到一更天,大致也能使音節合拍了,十娘夫婦才告別而去。陽曰旦目注心凝,聚精會神地在燈下獨自彈奏,過了好久,他突然得到了奇妙的領悟,不知不覺舞了起來。他一抬頭,忽然看見丫環還站在燈下,便驚訝地問:“你原來還沒有走呀?”丫環笑著說:“十姑讓我侍候你睡覺,然後關門,拿走燈。”陽曰旦仔細地打量她,只見她的眼睛如一汪秋水,澄靜明亮,神態嬌媚絕倫。陽曰旦不由地心動,微微地挑逗她,丫環只是低著頭,臉上含著笑容。陽曰旦越發被她迷惑,一下子站起來挽住她的脖子。丫環說:“不要這樣!現在已經四更天了,主人就要起床了。要是彼此都有心的話,明天晚上也不算晚呀。”兩人正親熱地擁抱時,就聽見晏海嶼喊“粉蝶”。丫環臉色大變,說:“壞了!”便急忙跑了出去。陽曰旦悄悄地跟過去探聽動靜,就聽晏海嶼說:“我早就說過這丫頭的塵緣未絕,你卻非要收下她不可。現在怎麼樣呢?該罰她三百鞭子!”十娘說:“這種心思一旦萌生,就不能夠再使喚了,不如替我的侄子把她遣送走吧。”陽曰旦心中又是慚愧又是害怕,返回書房關燈睡覺了。第二天天亮,便有童子來侍候陽曰旦洗漱,沒有再看見粉蝶。陽曰旦惴惴不安,恐怕被十娘責備,趕他走。不一會兒,晏海嶼和十娘一起出來,似乎心裡並沒有在意什麼事情,隨即考查陽曰旦的琴練得怎麼樣了。陽曰旦彈奏了一曲。十娘說:“雖然還沒有達到出神入化的地步,但也學得八九不離十了,等彈熟了以後,就可以到達神妙的境界。”陽曰旦又請求傳授別的曲子。晏海嶼就傳授了一曲《天女謫降》,演奏的手法拗折多變,陽曰旦練習了三天,才能彈成曲子。晏海嶼說:“曲子的大概你已經掌握了,以後只需要熟練地彈奏就行了。能把這兩支曲子練嫻熟了,琴曲裡面就沒有什麼不能彈奏的了。”
陽曰旦很想家,告訴十娘說:“我住在這裡,承蒙姑姑撫養,很是快樂,只是怕家裡會掛念我。這裡離家三千里,這麼遠的路程什麼時候才能夠到家啊!”十娘說:“這倒也不難,原來的那條船還在,我會再助你一帆順風的。你還沒有家室,我已經派粉蝶先去了。”說完就把琴贈送給他,又交給他一種藥,說:“回去給祖母服下,這藥不僅能治病,還可以延年益壽。”於是,十娘將陽曰旦送到海岸,讓他上船。陽曰旦找船槳,十娘說:“不要這個東西。”說著就解下裙子當作帆,替他繫好。陽曰旦擔心會迷路,十娘說:“你不必擔心,只要聽任風帆把船帶著在海上漂盪就行了。”她繫好帆,下了船。陽曰旦心中淒涼,正要和姑姑道謝告別,竟然颳起了南風,船一下子就離岸很遠了。陽曰旦一看,船上已經準備好乾糧,但是隻夠一天的吃喝,陽曰旦心中埋怨十娘未免太吝嗇。他肚子餓了也不敢多吃,生怕一下子吃完了,只是吃了一塊芝麻餅,覺得裡外都很香甜。剩下的六七塊,他當寶貝似地收藏起來,不過肚子也不再感到餓了。過了一會兒,只見夕陽就要西下,陽曰旦正在後悔來的時候沒有要燈燭,但轉眼之間,就遠遠地看見了人煙,再仔細一看,原來已經到了瓊州,他高興極了。不一會兒,船就靠了岸,他解下裙子,裹上芝麻餅,就回家去了。
陽曰旦一進家門,全家都十分驚喜,原來他離開家已經十六年了,他這才知道自己是遇上了神仙。陽曰旦看祖母的老病更加嚴重了,便拿出藥來給祖母服下,多年的老病一下子就好了。大家一齊奇怪地問陽曰旦是怎麼回事,他便把自己的經歷述說了一遍。祖母流下眼淚,說:“她確實是你的姑姑。”原來,老夫人有一個小女兒,名叫十娘,生下來就有仙女的風姿,許配給晏家為妻。女婿十六歲的時候進山修煉,沒有回來,十娘在家等到二十多歲時,忽然無病而亡,埋葬她至今已經有三十多年了。聽陽曰旦這麼一說,大家都懷疑十娘並沒有死。他取出十孃的裙子,果然就是十娘原先在家時常穿的。陽曰旦又把帶回來的餅分給大家嚐嚐,只要吃一塊就會整天不餓,而且精神倍增。老祖母命人開啟十孃的墳墓查驗,果然只剩下一口空棺材。
陽曰旦起初聘的是吳家的閨女,但還沒有娶進門。陽曰旦好幾年不回來,姑娘已經另嫁他人了。大家都相信十孃的話,等著粉蝶的到來。但是過了一年多,沒有一點兒音訊,便開始商議另娶他人。臨縣錢秀才,有個女兒名叫荷生,芳名四方遠揚。今年十六歲,還沒有出嫁就已經讓三個未婚女婿死了。陽曰旦便託媒人定了這門親事,選擇良辰吉日舉行了婚禮。荷生進門以後,果然是光彩照人,美豔絕倫,陽曰旦一看,原來她就是粉蝶。他驚訝地問她從前的事情,荷生卻一點兒也不知道。原來當年粉蝶被逐的時候,就是荷生降生的日子。每當陽曰旦給她彈奏《天女謫降》這支曲子時,荷生就會手託下巴,凝神思索,好像心領神會一般。