我嘗試找到背景顏色不透明的最近父級。找到父級背景顏色不透明
第一個代碼起作用,它找到父代,但是那裏的顏色是透明的。
bg = (e.parentsUntil($(this).has().css("background-color"))).css("background-color");
所以我爲此努力奮鬥:
bg = (e.parentsUntil($(this).has().css("background-color") <> 'transparent').css("background-color");
有一個小問題,那鉻定義了RGBA(0,0,0,0)透明,但是這應該是可能有或聲明儘快第一個障礙被採取。
你真的應該看看['.parentsUntil()'](https://api.jquery.com/parentsUntil/)和['.has()']的文檔(https:// api .jquery.com/has /) – Andreas
@Andreas我這樣做......那就是爲什麼第一個代碼可以工作......但我不知道如何排除透明 – ratmalwer
'.parentsUntil()'期望一個選擇器或元素。 '.has()'需要一個選擇器或一個元素,因此'$(this).has()'將返回一個空集。 '.css(「background-color」)'在空集上執行將返回'undefined'。所以你打電話給'e.parentsUntil(undefined)',它返回所有的父母,包括''([fiddle](https://jsfiddle.net/tf5e0und/)) – Andreas