0

私は Nokogiri を使用していますが、疑似セレクターの連鎖で問題が発生しました。

これらは機能します:

document.at_css(".link:not(.button)")
document.at_css(".link:after")

しかし、これはしません:

document.at_css(".link:not(.button):after")

次の行に沿ってかなり長いエラー メッセージが表示されます。

/Users/me/.rvm/gems/ruby-2.0.0-p195/gems/nokogiri-1.6.0/lib/nokogiri/css/parser_extras.rb:87:in `on_error':
unexpected ':' after '[#<Nokogiri::CSS::Node:0x007fc9540932b8 @type=:CONDITIONAL_SELECTOR, @value=[#<Nokogiri::CSS::Node:0x007fc954093da8 @type=:ELEMENT_NAME, @value=["*"]>, #<Nokogiri::CSS::Node:0x007fc954093f38 @type=:COMBINATOR, @value=[#<Nokogiri::CSS::Node:0x007fc95409b350 @type=:CLASS_CONDITION, @value=["link"]>, #<Nokogiri::CSS::Node:0x007fc95409ab80 @type=:NOT, @value=[#<Nokogiri::CSS::Node:0x007fc95409acc0 @type=:CLASS_CONDITION, @value=["button"]>]>]>]>]' 
(Nokogiri::CSS::SyntaxError)

この問題を解決するにはどうすればよいですか?

4

2 に答える 2

3

After は実際にはセレクターではありません。そうでない場合は、何をしようとしているのかを説明する必要があるかもしれません。

document.at(".link:not(.button)").after "content"
于 2013-06-27T01:53:04.953 に答える