javascript - JQuery CSS 伪类选择器在控制台中有效,但在脚本中无效

标签 javascript jquery html css

不确定我在这里遗漏了什么,但我正在尝试更改 anchor 标记上的图形。它可以从控制台运行,但不能从脚本运行。文本右侧的箭头应在向上和向下之间切换。

JS:

//initialize prodToggle and then:

prodToggle = -prodToggle;
if(prodToggle) {
  $('#prod').addClass('upClass').removeClass('downClass');
} else {
     $('#prod').addClass('downClass').removeClass('upClass');
}

CSS:

#mytable a.upClass::after {
  content: '\2227';
}

#mytable a.downClass::after {
  content: '\2228';
}

HTML:

<table id="mytable">
    <tr>
        <td>
            <a href="#" id="myAnchor" class="upClass" onClick="flipflop();">Test</a>
        </td>
    </tr>
</table>

Here's a pseudo-code Fiddle

最佳答案

你的 jsfiddle 完全搞砸了:你的表上缺少一个 id,你给 JQuery 的选择器没有选择任何东西,flipflop 函数是未定义的。

稍微清理一下后,它就可以正常工作了。

flipflop = function(event) {
  event.preventDefault();
  $('#myAnchor').toggleClass('upClass downClass');
}
#mytable a.upClass::after {
  content: '\2227';
}
#mytable a.downClass::after {
  content: '\2228';
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="mytable">
  <tr>
    <td> <a href="#" id="myAnchor" class="upClass" onclick="flipflop(event);">Test</a>

    </td>
  </tr>
</table>

关于javascript - JQuery CSS 伪类选择器在控制台中有效,但在脚本中无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26726087/

相关文章:

javascript - jquery 验证 css 也更改影响字段?

html - 无法缩放背景 div 图像

html - 不同浏览器的不同 CSS 文件

html - Mailchimp 选择加入确认 CSS

javascript - 在 for 中同步进行异步调用

javascript - react : Using a redux export connect from other components

javascript - 未捕获的语法错误 : Unexpected token ' in JSON

javascript - 如何在 cdata 中正确使用方括号

javascript - Foreach HTML 元素放入 javascript-array

javascript - 结合 jQuery PreventDefault 和所需的表单输入