JavaScriptを使用して古いブラウザで要素の高さを均等にする機能があります。問題は、ajax コンテンツのために、その関数を 3 秒間隔で実行する必要があることです。コンテンツの更新でコールバック関数を使用することはできません。これは、触れることができない CMS に組み込まれているためです。
次のcoffeescriptファイルがあります:
class window.ApplicationController
constructor: ->
#fire code
@equalColumnHeight()
#......
equalColumnHeight: ->
console.log "equal height"
colLeft = 0
if @browserwidth > 1024
colLeft = (@columnPageTreeNav + @columnSidebarA)
colHeight = Math.max(colLeft, @columnPageTreeNav, @columnContent, @columnSidebarA, @columnSidebarB)
$("#content, #sidebar_a, #sidebar_b").height colHeight
$("#sidebar_a").css "top", (@columnPageTreeNav + 190)
私の最初のアイデアは、次のような間隔で関数を起動することでした:
class window.ApplicationController
constructor: ->
#fire code
@equalColumnHeight()
setInterval @equalColumnHeight(), 3000
#......
equalColumnHeight: ->
colLeft = 0
if @browserwidth > 1024
colLeft = (@columnPageTreeNav + @columnSidebarA)
colHeight = Math.max(colLeft, @columnPageTreeNav, @columnContent, @columnSidebarA, @columnSidebarB)
$("#content, #sidebar_a, #sidebar_b").height colHeight
$("#sidebar_a").css "top", (@columnPageTreeNav + 190)
しかし、それはうまくいきません。