我对jQuery很陌生,我在编写一些jQuery逻辑时遇到了一个问题,因此我在下面添加了代码。我有第一个if语句检查屏幕分辨率,第二个if语句检查有多少列表项,并且仅在1个或多个条件下运行,最后一个if语句确保只有1个实例在内部运行一个AJAX请求,因此在输出多个实例时出现问题。
关于我哪里出了问题的任何建议?任何帮助都会很棒,谢谢:)
HTML:
<ul class="swatches color clearfix">
<li class="selectable">
<span class="swatchanchor js-swatchanchor js-colorswatch">
List Item 1
</span>
</li>
<li class="selectable">
<span class="swatchanchor js-swatchanchor js-colorswatch">
List Item 2
</span>
</li>
</ul>
jQuery
if($(window).width() >= 1358){
var $lis = $('ul.swatches.color li');
var $jsColorMsgCheck = $('.jsColorMsgError');
if ($lis.length > 1) {
if ($jsColorMsgCheck.length) {
$(".swatches.color").parent().append($('<div class="jsColorMsgError">PLEASE SELECT A COLOUR</div>'));
}
}
}
答案 0 :(得分:0)
如果我正确理解了您要执行的逻辑,则可能会误认为两件事:
1)
第二个if语句正在检查有多少个列表项,并且仅在1个或更多的情况下运行
要检查1个或多个,是否应该
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
DataContext = this;
}
...
因为if ($lis.length >= 1) {
等于2或更多。
2)
最后的if语句,确保仅添加一个实例
如果您只想在没有$lis.length > 1
div的情况下执行代码,则可以使用
.jsColorMsgError