2016-06-08 35 views
2

我使用的是flexbox,將兩個相鄰元素一起浮在同一行上。左邊的元素有一些文字,右邊的元素有一個數字。根據相鄰元素大小或值隱藏彈性盒元素

如果正確的元素包含一個長度至少爲7位數的值(> 999,999或< -999,999),則應隱藏包含文本的左側元素以爲更大的值騰出空間。

如何處理這個問題的任何想法?我應該根據正確的元素或值的大小來制定邏輯嗎?我希望我不必使用類似觀察者的東西。

+1

是否有可能添加一個檢查功能,當右div的內容更新? –

回答

1

可以使用"onchange""keyup"聽衆:

document.getElementById("right").addEventListener("keyup", myCheck); 

偉大工程:

jsFiddle here

這真的取決於如果有合適的元素是一個文本框或沒有,如果它是一個文本框,keyup監聽器是最好的,但如果它只是一個div,onchange偵聽器將工作。

+0

這對文本框很有用,但如果正確的元素(帶數字)只是不可編輯的文本,並且該值剛剛設置且不會更改,會發生什麼情況? –

+1

那麼如果你知道這只是一旦你可以調用'myCheck'一次。或者,在頁面加載之前添加事件偵聽器,然後它甚至可以獲取值。在小提琴中,我評論說它是一個div而不是一個文本框,它將與'onchange'事件監聽器一起工作。 –

+0

@ M.Slomski請把senpai標記作爲答案? –