gpt4 book ai didi

javascript - Chrome 中的 Plupload 定位问题

转载 作者:行者123 更新时间:2023-11-30 18:37:10 25 4
gpt4 key购买 nike

我在一个通过 AJAX 动态加载的表单中使用 plupload,而且这个表单有一个验证码图像。我正在努力使 plupload shim 正确定位。然后我找到了一个适用于几乎所有浏览器的解决方案,除了 Google Chrome。这是我的解决方案:

<span id="upl_container" style="position:relative;">
<input type="button" id="my_button" value="Click me to upload something" />
</span>

在我设置的 uploader 设置中:

        browse_button : 'my_button',
container : 'upl_container',

现在这使得 shim 绝对定位在相对父级中,其中父级(跨度)正好是按钮的大小(我不能使用 div,因为它占用其父级的 100% 宽度,然后 plupload 具有定位所有浏览器上的问题)。

当我检查 Firefox 中的 plupload shim 设置时(位置正确),我看到以下内容:

element.style {
background: none repeat scroll 0 0 transparent;
height: 28px;
left: 0;
position: absolute;
top: -4px;
width: 78px;
z-index: 99999;
}

但在 Chrome 中它显示了我:

element.style {
position: absolute;
background: transparent;
z-index: 99999;
top: 0px;
left: 146px;
width: 70px;
height: 23px;
background-position: initial initial;
background-repeat: initial initial;
}

显然,左边的属性太大了。

现在我不关心它是否是一个错误,我只是想找到一些解决方法如何强制 plupload 的左侧为 0。我尝试添加一个 Javascript 代码,在 Init 中将 left 设置为 0 , Refresh, PreInit回调到plupload,但这并没有帮助,左边无论如何都跳到了146px。

有没有办法强制 shim 的左侧为 0px?

(顺便说一句,我已将 Flash 设置为默认的 plupload 运行时,并回退到 HTML4 和 HTML5)。

最佳答案

好的,所以我使用了以下难看的代码:

uploader.bind('Refresh', function(up) {
$('#'+up.settings.container + ' > div').css('left',0);
$('#'+up.settings.container + ' > div').css('top',0);
$('#'+up.settings.container + ' > div').css('width','100%');
$('#'+up.settings.container + ' > div').css('height','100%');
$('#'+up.settings.container + ' > form').css('left',0);
$('#'+up.settings.container + ' > form').css('top',0);
$('#'+up.settings.container + ' > form').css('width','100%');
$('#'+up.settings.container + ' > form').css('height','100%');
$('#'+up.settings.container + ' > div').children().css('left',0);
$('#'+up.settings.container + ' > div').children().css('top',0);
$('#'+up.settings.container + ' > div').children().css('width','100%');
$('#'+up.settings.container + ' > div').children().css('height','100%');
$('#'+up.settings.container + ' > div').children().css('font-size','20px');// default is 999px, which breaks everything in firefox
})

耶!它适用于 flash、htm5、htm4 runimes,在 Chrome、Firefox、IE7、IE9 上全部测试。垫片终于到位了。

关于javascript - Chrome 中的 Plupload 定位问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7926566/

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