起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3394|回复: 4

[处理中3] 模拟按键点击attachmentSimple1,弹出选择菜单

[复制链接]

8

主题

15

帖子

77

积分

初级会员

Rank: 2

积分
77
QQ
发表于 2018-8-28 21:55:20 | 显示全部楼层 |阅读模式
采用attachmentSimple1上传图片到服务器并显示(参考pai)。
希望界面打开时,自动弹出选择界面:拍照、相册、设想等。
尝试如下:
1. 添加一个 button,点击事件中模拟点击attachmentSimple1,界面可以弹出选择界面。当然,这个功能不满足自动弹出菜单的功能。
        Model.prototype.chooseBtnClick = function(event){
                justep.Util.hint("chooseBtn....");
                var add = this.getElementByXid("div3");
                $(add).children().children().click();

        };

2.继续,尝试在modeload中增加一个timer,延时1.5秒后,再调用模拟点击。
        //只能上传图片
        Model.prototype.modelLoad = function(event){
                /*
                 * 控制文件上传类型
                 * 文件上传提示
                 */       
               
                // 这个和上传图片的控件关联的,不打开,上传图标不显示
                var data = this.comp("data");
                data.refreshData();
       
                var uploader = this.comp("attachmentSimple1").uploader;
                uploader.on('onFileSelected',function(event){
                        // TODO:限制为图片才可以上传,其实其他的也可以上传,就是要修改展示地方的代码
                    if(event.file.type==="" || event.file.type.indexOf("image/")===0){
//                            util.hint("图片正在上传...",
//                                        {
//                                                "position": "middle"
//                                        }
//                                );
                    } else {
                            util.hint("只能上传图片!",
                                        {
                                                "type":"warning",
                                                "position": "middle"
                                        }
                                );
                                event.cancel = true;
                    }                  
                });       
               
                justep.Util.hint("timer start....");
                this.comp("timer1").start();

        };

        Model.prototype.timer1Timer = function(event){
                justep.Util.hint("timer1Timer....");
                //var add = me.getElementByXid("div3");
                var add = this.getElementByXid("div3");
                $(add).children().children().click();
                this.comp("timer1").stop();

        };

        此时,timer1Timer是有打印信息的,但选择界面不能弹出。

            请教如何改动?谢谢!



91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35913
发表于 2018-8-29 13:57:22 | 显示全部楼层
model的onload事件中去调用
var add = this.getElementByXid("div3");
                $(add).children().children().click();
不能弹出吗?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

8

主题

15

帖子

77

积分

初级会员

Rank: 2

积分
77
QQ
 楼主| 发表于 2018-8-29 23:08:50 | 显示全部楼层
在onload中调用,弹不出选择框。自己添加按钮,可以弹出。所以才尝试使用定时器看看是否可行。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35913
发表于 2018-8-30 10:50:30 | 显示全部楼层
弹不出this.getElementByXid("div3");获取到了吗?

放在setTimeout中看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

22

主题

107

帖子

482

积分

中级会员

Rank: 3Rank: 3

积分
482
QQ
发表于 2020-3-11 20:22:39 | 显示全部楼层
我也遇到了, 非常简单, 你这个组件绑定的data没有数据, 或者data只读了,导致这个组件变为只读了, 固触发单击事件没有弹窗.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-4-20 08:44 , Processed in 0.111881 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表