假设我有这样的选择:
<select size="4"> <option id="1">Please wait ...</option> <option id="2">Please wait ...</option> <option id="3">Please wait ...</option> <option id="4">Please wait ...</option> <option id="5">Please wait ...</option> </select>
我应该看到一个包含右侧滚动条的4个元素的列表.
我现在想做的是如果选项以某种方式变得可见(滚动和/或初始化),则通过ajax加载文本.
编辑:
最后,由于巨大的元数据传输,我不会加载它们.这是我必须上传的请求(发送到服务器):
这对于单个元素的延迟加载是不可接受的.
解决方法
我很抱歉我的英语不好,但是当我理解这个问题时,我可以提出这个解决方案:
$(document).ready(function(){ $('select').on('scroll',function(){ var sel = $(this); var lasto = sel.find('option:last'); var s = sel.position().top + sel.height(); var o = lasto.height() + lasto.position().top - 4; setTimeout(function(){ if(o < s){console.log('We need AJAX!');} },2200); }); });