首页 > 解决方案 > 使用山核桃库,是否可以将选择器与拉链结合使用?

问题描述

我是 Clojure、山核桃和拉链的新手。

我想要做的是,我想使用选择器转到 HTML 文档中的一个位置。然后,我希望能够从该位置导航到父元素,然后从该位置获取第二个兄弟。

这可能与山核桃有关吗?据我了解,似乎我只能选择使用选择器,或者在拉链结构中导航 HTML,但我不知道如何做到这两者,或者这是否可能。

标签: clojure

解决方案


你可以这样做:

    (:require
        [hickory.select :as s]
        [hickory.convert :as convert]
        [clojure.zip :as z]
...

    (let [html (convert/hiccup-to-hickory (list [:div
                                                 [:div {:class "didya"} "nevertheless"]]
                                                [:div "possible"]
                                                [:div "geometric"]))]

        (-> (s/select-locs (s/class "didya") html)
            (first)
            (z/up)
            (z/right)
            (z/right)
            (z/node)))

推荐阅读