专家们的速成问题,
我正在制作一个协作网站,允许用户在文本中添加便笺并在屏幕上移动它们。我有一个数据库文件,用于存储通过ajax和jquery / jquery UI完成的文本和坐标(PHP / MySql)。我在将数据从数据库中取出并循环回到页面时遇到一些问题。
数据被循环到div类中(以x和y作为属性),我正在使用循环将x和y取回,并尝试将它们应用于CSS。我已经发出警报,正在获取数据,但是应用它似乎有问题。我知道这个项目将会进行得很顺利....感谢您的时间。
这是我在代码中尝试的内容:
基本的PHP循环:
<?php
$get_textsticky_query = "SELECT * FROM textsticky
WHERE user_id = $current_id
AND project_id=$user_project_id";
$get_textsticky_result=mysql_query($get_textsticky_query);
while($row=mysql_fetch_assoc($get_textsticky_result)){
echo '<div class="textsticky" x="'.$row['textsticky_x'].'" y="'.$row['textsticky_y'].'"><div class="textstickyvalueholder" contentEditable="true" textstickyid="'. $row['textsticky_id'] .'">'. $row['textsticky_text'] .'</div><button>Like</button></div>';
}
?>
尝试通过jquery应用于CSS:
$(".textsticky").each(function(index){
//store x, y from looped php
var x = $(this).attr("x");
var y = $(this).attr("y");
//assign looped php to css
$(this).css("left",x);
$(this).css("top",y);
});
最佳答案
要在父容器内移动对象,需要在positoon: relative;
的css中设置.textsticky
。
要在整个屏幕上移动对象,您需要设置position: absolute;
。
在不更改position
属性的情况下,left
和top
值将无效。
关于php - 通过循环从多个PHP回显属性设置CSS x和y,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8974451/