我有一个显示图片的PHP页面:
echo "<p> <img id=\"myPic\" src=\"myPic.png\" > </p>";
稍后在代码中,我使用JS:
在该图片周围放置小图标echo "<script>
var picTop = document.getElementById(\"myPic\").offsetTop ;
var picLeft= document.getElementById(\"myPic\").offsetLeft ;
document.getElementById(\"" . $iconId. "\").style.top = picTop + " . $iconPosition[$i][0] . " + \"px\";
document.getElementById(\"" . $iconId. "\").style.left = picLeft + " . $iconPosition[$i][1] . " + \"px\";
</script>";
我将页面上传到服务器上,其他用户告诉我图标与主图片重叠。但是这只发生一次,并在重新加载页面时修复。我也亲眼目睹了这一点,我可以通过使用另一个浏览器来重现这个问题,再次通过刷新来解决。
我不知道出了什么问题。也许主要图片需要很长时间才能加载,并且JS脚本已经被执行,因此图标位置很差 - 但稍后会修复它,因为图片位于临时文件中,或者其他内容。
我试图用setTimeout延迟JS脚本,但仍然没有解决问题
echo "<script>
var picTop = document.getElementById(\"myPic\").offsetTop ;
var picLeft= document.getElementById(\"myPic\").offsetLeft ;
setTimeout ( function() {
document.getElementById(\"" . $iconId. "\").style.top = picTop + " . $iconPosition[$i][0] . " + \"px\";
document.getElementById(\"" . $iconId. "\").style.left = picLeft + " . $iconPosition[$i][1] . " + \"px\";
}, 500) ;
</script>";
或者我可以尝试更多毫秒......由于难以重现问题,我无法做出正确的诊断
感谢您的帮助!
答案 0 :(得分:1)
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"android:id="@+id/fragment"
android:name="com.example.sevak1994.sunshine.MainActivityFragment"
tools:layout="@layout/fragment_main" android:layout_width="match_parent"
android:layout_height="match_parent" />