gpt4 book ai didi

jquery - 仅当自动宽度大于当前宽度时才更改元素(选择框)的宽度-jquery

转载 作者:太空宇宙 更新时间:2023-11-04 15:35:46 24 4
gpt4 key购买 nike

这是 super 无聊 super 烦人的 IE 选择框问题!

我已经成功解决了...

JQUERY:

$(function(){
if($.browser.msie){
$("select:not(#wrkTimeFrm,#wrkTimeFrm1,#wrkTimeTo,#wrkTimeTo1)")
.focus(function(){
$(this).css("width","auto");
$(this).css("position","absolute");
});
$("select:not(#wrkTimeFrm,#wrkTimeFrm1,#wrkTimeTo,#wrkTimeTo1)")
.blur(function(){
$(this).css("width","145px");
$(this).css("position","inherit");
});
}
})

...但那只是到现在为止。

如您所见,:not(id)s 是选择框,其大小是/应该小于 145px,即它不应该改变。它工作正常。但是这样的选择框列表太多了,无法以这种方式处理。此外,id 是动态的,我不知道谁的宽度大于/小于 145px(选项是动态的......显然)。

所以现在,我尝试仅在选择框的自动宽度大于其当前宽度时才更新选择框的宽度。像这样的东西:

$(function(){
if($.browser.msie){
$("select").focus(function(){
if(autoWidth>currentWidth){
do_the_rest();
}
});
}
});

我正在为“autoWidth”和“currentWidth”运行一些想法($(“。dd”)。outerWidth()给出宽度为 145,但我担心如果我可以将它用于 currentWidth 作为我在具有相同 css 类“dd”的同一个 jsp 上得到了多个选择框,尽管仅针对“此”选择框触发了事件。可能有人可以让我知道如何获取焦点下选择框的类名。 ..也许!......而且比 outerWidth.)。

所以请帮忙!

最佳答案

我发现很难理解你的意思,特别是因为你没有包含任何 fiddle 甚至生成的 HTML 代码......但我想也许你想做的是这样的:

$(function(){
if($.browser.msie){
$("select").focus(function(){
if($(this).width()>145){
$(this).css("width","auto");
}
});
}
});

更新:

$(function() {
$("select").focus(function() {
if ($(this).width() > 95) {
var prevWidth = $(this).width();
$(this).css("width", "auto");
if ($(this).width() < 100) {
$(this).css("width", 100 + "px");
}
$(this).blur(function() {
$(this).css("width", prevWidth + "px");
});
}

});

});​

关于jquery - 仅当自动宽度大于当前宽度时才更改元素(选择框)的宽度-jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12820857/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com