そのため、ログイン ボタンから、ブロックinitialize()
を含む関数を実行するダッシュボードにルーティングする Web アプリケーションがあります。document.ready()
問題は、バックボーン上でブロックが実行されていないroute
ように見えることです。document.ready()
クリアするコードを次に示します。
私のランディングページビューからのイベントは次のとおりです。
events:
'click .pure-menu .signin':
() ->
application.router.navigate('dash', {trigger: true})
次に、アプリケーションをダッシュボード ビューにルーティングします。
module.exports = class DashView extends Backbone.Marionette.ItemView
id: 'dash-view'
template: template
initialize: ->
$ ->
$(".gridster ul").gridster(
widget_margins: [10, 10]
widget_base_dimensions: [140, 140]
)
document.ready()
dom が読み込まれると実行されるコードを含む jQueryブロックがあります。
私はGridsterライブラリを使用していますが、Gridster グリッドが初期化されないため、ページがルーティングされるときにこのコードは実行されません。
ページを更新すると、すべてが期待どおりに機能します。
ページがルーティングされると、jQuery は「dom loaded」イベントを取得しないため、ブロックが実行されないと思いますか? わからない。どんな助けでも大歓迎です。
ハックを使用して解決するには、ページを更新してバックボーンにルーティングする方法を知っている人はいますか?