我正在使用高级自定义字段创建一个新字段类型,它使用户能够从图像库中选择一个图像并在该图像中定义一个点(X、Y 坐标)。定义坐标后,用户可以在该点放置叠加视频。但我的问题是,如何使用 javascript API 在数据库中获取和设置 X 和 Y 值?
问问题
2217 次
1 回答
0
好的,所以@ObmerKronen 建议我发布一些代码来演示我正在尝试做的事情......很有意义:)
我已在新的 ACF 字段 php 文件 (class-tas-v5.php) 中添加了图像
$imgID = get_field('image_url');
$img = wp_get_attachment_image( $imgID, "full", "", array( "class" => "overlay-point-img" ) );
echo '<div class="overlay-point-img-container">' . $img . '</div>';
然后我在 input.js 文件中定义 X 和 Y 坐标
function initialize_field($field) {
var overlay_point_container = $field.context;
var img = $(overlay_point_container).find(".overlay-point-img-container");
var circle = '<div class="overlay-point-circle"></div>';
img.prepend(circle);
$(img).on("mousemove", function(event) {
var relX = event.pageX - $(this).offset().left;
var relY = event.pageY - $(this).offset().top;
$(circle).css({ left: relX, top: relY });
});
// Tried these two functions, but none of the values are saved in the database
// acf.set("posX", "123");
// $field.val("posX");
}
我试图用这样的虚拟数据保存它
acf.set("posX", "123");
$field.val("posX");
于 2019-12-09T07:55:26.983 回答