你好,我正在开发一个Elementor插件,我有一个转换设置在我的小工具,像这样:
$repeater->add_responsive_control(
'rp_translatex_header' ,
[
'label' => esc_html('Header Translate X ') ,
'type' => \Elementor\Controls_Manager::NUMBER ,
'devices' => [ 'desktop', 'tablet', 'mobile' ],
'min' => -100,
'max' => 100,
'selectors' => [
'{{WRAPPER}} {{CURRENT_ITEM}} hth' => 'transform:translate({{VALUE}}vw,{{rp_translatey_header.VALUE}}vh)',
]
]
);
在选择器中,我为translateY使用了另一个控制值,这在响应模式之前工作正常!在移动的或平板电脑上,来自另一个控件的translateY值不起作用,并返回桌面值(窗体目标控件)要修复这个问题,我应该使用rp_translatey_header_移动的.VALUE获取移动模式值!但这不是我修复这个问题的理想方法,我'I“我确信这是一种方法,我想要这样的结果:
'selectors' => [
// for normal mode (desktop)
'{{WRAPPER}} {{CURRENT_ITEM}} div' =>
'transform:translate({{VALUE}}vw,{{rp_translatey_header.VALUE}}vh)',
// for mobile mode
'{{WRAPPER}} {{CURRENT_ITEM}} div' =>
'transform:translate({{VALUE}}vw,{{rp_translatey_header_mobile.VALUE}}vh)',
]
1条答案
按热度按时间yws3nbqq1#
我可以通过{{your_control_id.VALUE}}很好地获取值,因为我在响应模式下遇到问题,{{your_control_id.VALUE}}只返回桌面上的值,在移动的模式下它将再次返回桌面值!我该怎么办?使用your_control_id_mobile将解决问题,但我想使用所有模式值!我怎么能告诉控制和选择器在哪个屏幕使用桌面和移动的
我找到了解决方案!我又添加了两个选择器,就在{{WRAPPER}}之前,我添加了(移动的)/(Tablet)/(Desktop),如下所示:
并且对于每个响应模式获取响应ID,如your_id_移动的.VALUE!