App-Android(使用App+htnl5框架,解决消息推送兼容SignalR问题)
loulijun2021
2022-09-20 eb23a7c7faefe86330a88f9118b8211f6b86e75b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<!DOCTYPE HTML>
<html>
    <head>
        <meta charset="utf-8"/>
        <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"/>
        <meta name="HandheldFriendly" content="true"/>
        <meta name="MobileOptimized" content="320"/>
        <title>Search Input</title>
        <script type="text/javascript" src="../js/common.js"></script>
        <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/>
        <script>
var ws = null;
// H5 plus事件处理
function plusReady(){
    ws = plus.webview.currentWebview();
    ws.addEventListener('titleNViewSearchInputChanged', function(e){
        console.log('titleNViewSearchInputChanged: '+JSON.stringify(e));
        document.getElementById('search').innerText = e.text;
    }, false);
    ws.addEventListener('titleNViewSearchInputConfirmed', function(e){
        console.log('titleNViewSearchInputConfirmed: '+JSON.stringify(e));
        doSearch(e.text);
    }, false);
    ws.addEventListener('titleNViewSearchInputFocusChanged', function(e){
        console.log('titleNViewSearchInputFocusChanged: '+JSON.stringify(e));
    }, false);
}
document.addEventListener('plusready', plusReady, false);
 
// 更新搜索文本
var bText = false;
function changeText(){
    var t = bText?'':'修改后的搜索文本';
    bText = !bText;
    ws.setTitleNViewSearchInputText(t);
}
 
// 获取搜索文本
function getText(){
    console.log('searchInput: '+ws.getTitleNViewSearchInputText());
}
 
// 执行搜索操作
var wbaidu = null;
function doSearch(txt){
    if(wbaidu){    // 避免快速点击打开
        return;
    }
    var url = 'https://m.baidu.com/s?word='+txt;
    wbaidu = plus.webview.create('https://m.baidu.com/s?word='+txt, 'baidu', {
        backButtonAutoControl: 'close',
        popGesture: 'close',
        progress: {
            color: '#00CC00',
            height: '3px'
        },
        titleNView: {
            autoBackButton: true,
            backgroundColor: '#D74B28',
            titleText: txt,
            titleColor: '#CCCCCC'
        }
    });
    wbaidu.addEventListener('close', function(e){
        wbaidu = false;
        ws.setTitleNViewSearchInputFocus(true);
    }, false);
    ws.setTitleNViewSearchInputFocus(false);
    wbaidu.show('pop-in');
}
        </script>
    </head>
    <body>
        <br/>
        <p>搜索示例页面</p>
        <br>
        <div class="button" onclick="changeText()">修改搜索文本</div>
        <div class="button" onclick="getText()">获取搜索文本</div>
        <br/>
        <p style="color:#FF0000;" id="search"></p>
        <br/>
    </body>
</html>