加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

twitter-bootstrap-3 – 使用Om的bootstrap下拉列表

发布时间:2020-12-18 00:19:56 所属栏目:安全 来源:网络整理
导读:这就是我所拥有的: (defn view [cursor owner] (reify om/IDidMount (did-mount [_] (- (js/$".dropdown-toggle") (.dropdown))) om/IRender (render [_] (dom/div #js {:className "dropdown"} (dom/button #js {:className "btn btn-default dropdown-tog
这就是我所拥有的:
(defn view [cursor owner]
  (reify
    om/IDidMount
    (did-mount [_]
      (-> (js/$".dropdown-toggle")
          (.dropdown)))

    om/IRender
    (render [_]
      (dom/div #js {:className "dropdown"}
               (dom/button #js {:className "btn btn-default dropdown-toggle"
                                :type "button"
                                :id "dropdownMenu1"} "Dropdown" (dom/span #js {:className "caret"}))
               (dom/ul #js {:className "dropdown-menu"
                            :role "menu"
                            :ariaLabelledby "dropdownMenu1"}
                       (dom/li #js {:role "presentation"}
                               (dom/a #js {:role "menuitem"
                                           :tabIndex "-1"
                                           :href "#"} "Action"))
                       (dom/li #js {:role "presentation"}
                               (dom/a #js {:role "menuitem"
                                           :tabIndex "-1"
                                           :href "#"} "Another action")))))))

问题是,一旦打开下拉列表,它就不再隐藏了,因为当它点击它或其他地方时应该是这样.击键也不起作用.我相信这里缺少一些重要的东西,它会是什么?我正在使用bootstrap 3.1.1和jquery 1.11.0.

谢谢.

解决方法

这是我创建下拉组件的方法:
(defn dropdown [cursor owner {:keys [id text values]}]
 (om/component
   (html
     [:div.dropdown
       [:button {:type "button"
                 :class "btn dropdown-toggle"
                 :data-toggle "dropdown"
                 :id id}
                text
                [:span {:class "caret"}]]
       [:ul {:class "dropdown-menu" :role "menu" :aria-labelledby id}
         [:li {:role "presentation"}
           (for [v values] 
             [:a {:role "menuitem" :tabIndex "-1" :href "#"} v])]]])))

它隐藏在它应该的时候.为了清楚起见,我使用jQuery 1.11.1,Bootstrap 3.2.0和sablono,但这不会影响任何内容.我认为您不应该将IDidMount用于jQuery,因为所有交互都是通过bootstrap的dropdown JavaScript插件(包含在Bootstrap库中)处理的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读