YYPOST群发软件 发表于 2025-12-22 09:55:02

苹果H5界面完整调用脚本示例

苹果H5界面完整调用脚本示例


//🍎交流QQ群711841924群一,苹果内测群,528816639
// 创建一个绿色主题风格的 WebView 示例
Import("主脚本.js")
async function createGreenThemedWebViewExample() {
    return new Promise((resolve, reject) => {
      try {
            // 创建 WebView 实例
            var web = new WebView();
            
            // 显示界面
            web.show();
            
            // 加载绿色主题风格的 HTML 内容
            web.loadHtml(`
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <title>AIWROK CheckBox控件演示</title>
    <style>
      /* 基础样式重置 */
      * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            -webkit-tap-highlight-color: transparent;
      }

      body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
            background-color: #f5f5f5;
            color: #333;
            line-height: 1.6;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
      }

      /* 手机容器 */
      .mobile-container {
            max-width: 414px;
            margin: 0 auto;
            background-color: white;
            min-height: 100vh;
            position: relative;
            overflow: hidden;
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
      }

      /* 顶部导航栏 */
      .top-nav {
            display: flex;
            background-color: white;
            border-bottom: 1px solid #f0f0f0;
            padding: 12px 0;
      }

      .top-nav-item {
            flex: 1;
            text-align: center;
            font-size: 16px;
            color: #333;
            text-decoration: none;
            padding: 8px 0;
      }

      .top-nav-item.active {
            color: #2196f3;
            font-weight: 600;
            border-bottom: 2px solid #2196f3;
      }

      /* 主要内容区域 */
      .content {
            padding: 0;
            padding-bottom: 80px;
      }

      /* 页面容器样式 */
      .page {
            display: none;
      }

      .page.active {
            display: block;
      }

      /* 返回按钮 */
      .back-button {
            width: 100%;
            height: 56px;
            background-color: #ff0000;
            color: white;
            border: none;
            border-radius: 0;
            font-size: 18px;
            font-weight: 600;
            cursor: pointer;
            margin-bottom: 0;
            transition: all 0.3s ease;
            transform: scale(1);
      }

      .back-button:active {
            background-color: #cc0000;
            transform: scale(0.95);
      }

      /* 复选框列表 */
      .checkbox-list {
            margin-bottom: 0;
            padding-left: 50px;
      }

      .checkbox-item {
            display: flex;
            align-items: center;
            padding: 12px 16px;
            border-bottom: 1px solid #f0f0f0;
      }

      .checkbox-item:last-child {
            border-bottom: none;
      }

      .checkbox-item input {
            width: 20px;
            height: 20px;
            margin-right: 12px;
            accent-color: #ff0000;
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            border: 1px solid #000;
            border-radius: 2px;
            background-color: #fff;
            cursor: pointer;
            position: relative;
      }

      .checkbox-item input:checked {
            background-color: #fff;
            border-color: #000;
      }

      .checkbox-item input:checked::after {
            content: "✓";
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            color: #ff0000;
            font-size: 14px;
            font-weight: bold;
      }

      .checkbox-item label {
            flex: 1;
            font-size: 16px;
            color: #333;
            cursor: pointer;
      }

      /* 运行按钮 */
      .run-button {
            width: 100%;
            height: 56px;
            background-color: #1976d2;
            color: white;
            border: none;
            border-radius: 0;
            font-size: 18px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
            margin-top: 20px;
            position: relative;
            overflow: hidden;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
      }

      .run-button:hover {
            background-color: #1565c0;
            box-shadow: 0 4px 8px rgba(25, 118, 210, 0.3);
            transform: translateY(-2px);
      }

      .run-button:active {
            background-color: #0d47a1;
            transform: scale(0.98) translateY(0);
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
      }

      .run-button:disabled {
            background-color: #90caf9;
            cursor: not-allowed;
            transform: none;
            box-shadow: none;
      }

      /* 波纹效果 */
      .run-button::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 0;
            height: 0;
            border-radius: 50%;
            background-color: rgba(255, 255, 255, 0.5);
            transform: translate(-50%, -50%);
            transition: width 0.6s ease, height 0.6s ease;
      }

      .run-button:active::before {
            width: 300px;
            height: 300px;
      }

      /* 加载动画 */
      @keyframes spin {
            from { transform: rotate(0deg); }
            to { transform: rotate(360deg); }
      }

      .run-button.loading {
            background-color: #1976d2;
      }

      .run-button.loading::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 24px;
            height: 24px;
            margin-top: -12px;
            margin-left: -12px;
            border: 2px solid rgba(255, 255, 255, 0.3);
            border-top-color: white;
            border-radius: 50%;
            animation: spin 0.8s linear infinite;
      }

      .run-button.loading span {
            opacity: 0;
      }





      /* 响应式设计 */
      @media (max-width: 375px) {
            .mobile-container {
                max-width: 100%;
            }
      }

      /* 适配iOS设备的特殊优化 */
      @supports (-webkit-touch-callout: none) {
            /* 适配iOS底部安全区域 */
            .content {
                padding-bottom: calc(80px + env(safe-area-inset-bottom, 0));
            }

            /* 适配iOS顶部安全区域 */
            .status-bar {
                padding-top: env(safe-area-inset-top, 0);
                height: calc(44px + env(safe-area-inset-top, 0));
            }
      }
    </style>
</head>
<body>
    <div class="mobile-container">
      <!-- 顶部导航栏 -->
      <div class="top-nav">
            <a href="#" class="top-nav-item active">首页</a>
            <a href="#" class="top-nav-item">第二页</a>
            <a href="#" class="top-nav-item">第三页</a>
            <a href="#" class="top-nav-item">第四页</a>
      </div>
      <!-- 主要内容区域 -->
      <div class="content">
            <!-- 首页内容 -->
            <div id="page1" class="page active">
                <!-- 返回按钮 -->
                <button class="back-button" onclick="handleBackButton()">返回</button>

                <!-- 复选框列表 -->
                <div class="checkbox-list">
                  <div class="checkbox-item">
                        <input type="checkbox" id="item1" onchange="handleCheckboxChange(this)">
                        <label for="item1">抖音极速版</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item2" onchange="handleCheckboxChange(this)">
                        <label for="item2">快手极速版</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item3" onchange="handleCheckboxChange(this)">
                        <label for="item3">汽水音乐</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item4" onchange="handleCheckboxChange(this)">
                        <label for="item4">番茄畅听音乐版</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item5" onchange="handleCheckboxChange(this)">
                        <label for="item5">西瓜视频</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item6" onchange="handleCheckboxChange(this)">
                        <label for="item6">番茄畅听</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item7" onchange="handleCheckboxChange(this)">
                        <label for="item7">番茄小说</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item8" onchange="handleCheckboxChange(this)">
                        <label for="item8">悟空浏览器</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item9" onchange="handleCheckboxChange(this)">
                        <label for="item9">红果短剧</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item10" onchange="handleCheckboxChange(this)">
                        <label for="item10">今日头条</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item11" onchange="handleCheckboxChange(this)">
                        <label for="item11">今日头条极速版</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item12" onchange="handleCheckboxChange(this)">
                        <label for="item12">喜番短剧</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item13" onchange="handleCheckboxChange(this)">
                        <label for="item13">快手正式版</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item14" onchange="handleCheckboxChange(this)">
                        <label for="item14">卸载APP</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item15" onchange="handleCheckboxChange(this)">
                        <label for="item15">测试2</label>
                  </div>
                </div>

                <!-- 运行按钮 -->
                <button class="run-button" onclick="handleRunButton(this)"><span>点击运行</span></button>
            </div>

            <!-- 第二页内容 -->
            <div id="page2" class="page">
                <!-- 返回按钮 -->
                <button class="back-button" onclick="handleBackButton()">返回</button>

                <!-- 复选框列表 -->
                <div class="checkbox-list">
                  <div class="checkbox-item">
                        <input type="checkbox" id="item21" onchange="handleCheckboxChange(this)">
                        <label for="item21">喜番快手正式快手极速</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item22" onchange="handleCheckboxChange(this)">
                        <label for="item22">抖音极速西瓜汽水</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item23" onchange="handleCheckboxChange(this)">
                        <label for="item23">红果悟空番茄畅听音乐</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item24" onchange="handleCheckboxChange(this)">
                        <label for="item24">番茄小说番茄畅听</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item25" onchange="handleCheckboxChange(this)">
                        <label for="item25">抖音极速西瓜汽水新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item26" onchange="handleCheckboxChange(this)">
                        <label for="item26">红果悟空番茄畅听音乐新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item27" onchange="handleCheckboxChange(this)">
                        <label for="item27">番茄小说番茄畅听新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item28" onchange="handleCheckboxChange(this)">
                        <label for="item28">喜番快手正式快手极速新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item29" onchange="handleCheckboxChange(this)">
                        <label for="item29">喜番快手正式快手极速周期</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item30" onchange="handleCheckboxChange(this)">
                        <label for="item30">抖音系周期任务</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item31" onchange="handleCheckboxChange(this)">
                        <label for="item31">抖音系周期养号</label>
                  </div>
                </div>

                <!-- 运行按钮 -->
                <button class="run-button" onclick="handleRunButton(this)"><span>点击运行</span></button>
            </div>

            <!-- 第三页内容 -->
            <div id="page3" class="page">
                <!-- 返回按钮 -->
                <button class="back-button" onclick="handleBackButton()">返回</button>

                <!-- 复选框列表 -->
                <div class="checkbox-list">
                  <div class="checkbox-item">
                        <input type="checkbox" id="item41" onchange="handleCheckboxChange(this)">
                        <label for="item41">抖音系周期养号</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item42" onchange="handleCheckboxChange(this)">
                        <label for="item42">抖音系周期任务</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item43" onchange="handleCheckboxChange(this)">
                        <label for="item43">喜番快手正式快手极速周期</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item44" onchange="handleCheckboxChange(this)">
                        <label for="item44">抖音系新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item45" onchange="handleCheckboxChange(this)">
                        <label for="item45">快手系新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item46" onchange="handleCheckboxChange(this)">
                        <label for="item46">番茄小说番茄畅听新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item47" onchange="handleCheckboxChange(this)">
                        <label for="item47">红果悟空番茄畅听音乐新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item48" onchange="handleCheckboxChange(this)">
                        <label for="item48">抖音极速西瓜汽水新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item49" onchange="handleCheckboxChange(this)">
                        <label for="item49">快手系新手模式</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item50" onchange="handleCheckboxChange(this)">
                        <label for="item50">番茄小说番茄畅听音乐</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item51" onchange="handleCheckboxChange(this)">
                        <label for="item51">抖音极速西瓜汽水</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item52" onchange="handleCheckboxChange(this)">
                        <label for="item52">喜番快手正式快手极速</label>
                  </div>
                </div>

                <!-- 运行按钮 -->
                <button class="run-button" onclick="handleRunButton(this)"><span>点击运行</span></button>
            </div>

            <!-- 第四页内容(备用) -->
            <div id="page4" class="page">
                <!-- 返回按钮 -->
                <button class="back-button" onclick="handleBackButton()">返回</button>

                <!-- 复选框列表 -->
                <div class="checkbox-list">
                  <div class="checkbox-item">
                        <input type="checkbox" id="item61" onchange="handleCheckboxChange(this)">
                        <label for="item61">备用任务1</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item62" onchange="handleCheckboxChange(this)">
                        <label for="item62">备用任务2</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item63" onchange="handleCheckboxChange(this)">
                        <label for="item63">备用任务3</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item64" onchange="handleCheckboxChange(this)">
                        <label for="item64">备用任务4</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item65" onchange="handleCheckboxChange(this)">
                        <label for="item65">备用任务5</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item66" onchange="handleCheckboxChange(this)">
                        <label for="item66">备用任务6</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item67" onchange="handleCheckboxChange(this)">
                        <label for="item67">备用任务7</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item68" onchange="handleCheckboxChange(this)">
                        <label for="item68">备用任务8</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item69" onchange="handleCheckboxChange(this)">
                        <label for="item69">备用任务9</label>
                  </div>
                  <div class="checkbox-item">
                        <input type="checkbox" id="item70" onchange="handleCheckboxChange(this)">
                        <label for="item70">备用任务10</label>
                  </div>
                </div>

                <!-- 运行按钮 -->
                <button class="run-button" onclick="handleRunButton(this)"><span>点击运行</span></button>
            </div>
      </div>


    </div>

    <script>
      // 模拟AIWROK原生环境的交互方法
      // 在实际环境中,这些方法由原生应用提供
      if (typeof setConfig === 'undefined') {
            function setConfig(key, value) {
                console.log('设置配置:', key, '=', value);
                try {
                  localStorage.setItem(key, value);
                  showToast('配置已设置');
                } catch (e) {
                  console.warn('localStorage不可用:', e.message);
                  if (!window._memoryStorage) {
                        window._memoryStorage = {};
                  }
                  window._memoryStorage = value;
                  showToast('配置已记录');
                }
            }
      }
      
      if (typeof getConfig === 'undefined') {
            function getConfig(key, callback) {
                var value = '未设置';
                try {
                  value = localStorage.getItem(key) || '未设置';
                } catch (e) {
                  console.warn('localStorage不可用:', e.message);
                  if (window._memoryStorage && window._memoryStorage !== undefined) {
                        value = window._memoryStorage;
                  }
                }
               
                if (typeof callback === 'function') {
                  callback(value);
                }
            }
      }

      // 完全移除toast模拟,避免与原生toast对象冲突
      // 统一使用showToast函数进行提示
      
      if (typeof printl === 'undefined') {
            function printl(message) {
                console.log('原生日志:', message);
            }
      }
      
      if (typeof dismiss === 'undefined') {
            function dismiss() {
                console.log('关闭界面');
                showToast('关闭界面操作');
               
                // 模拟关闭界面的视觉效果
                var mobileContainer = document.querySelector('.mobile-container');
                if (mobileContainer) {
                  mobileContainer.style.transition = 'opacity 0.5s ease, transform 0.5s ease';
                  mobileContainer.style.opacity = '0';
                  mobileContainer.style.transform = 'translateY(20px)';
                  
                  // 动画结束后隐藏元素
                  setTimeout(function() {
                        mobileContainer.style.display = 'none';
                  }, 500);
                }
            }
      }
      
      // 自定义Toast提示
      function showToast(message) {
            var toast = document.getElementById('custom-toast');
            if (!toast) {
                toast = document.createElement('div');
                toast.id = 'custom-toast';
                toast.style.cssText =
                  'position: fixed;' +
                  'top: 50%;' +
                  'left: 50%;' +
                  'transform: translate(-50%, -50%);' +
                  'background: rgba(0, 0, 0, 0.7);' +
                  'color: white;' +
                  'padding: 12px 24px;' +
                  'border-radius: 8px;' +
                  'font-size: 14px;' +
                  'z-index: 9999;' +
                  'opacity: 0;' +
                  'transition: opacity 0.3s ease, transform 0.3s ease;' +
                  'transform: translate(-50%, -50%) scale(0.9);';
                document.body.appendChild(toast);
            }
            
            if (toast.timer) {
                clearTimeout(toast.timer);
            }
            
            toast.textContent = message;
            toast.style.opacity = '1';
            toast.style.transform = 'translate(-50%, -50%) scale(1)';
            
            toast.timer = setTimeout(function() {
                toast.style.opacity = '0';
                toast.style.transform = 'translate(-50%, -50%) scale(0.9)';
            }, 2000);
      }
      
      // 保存用户操作到配置
      function saveUserAction(action, value) {
            var timestamp = new Date().toISOString();
            printl('保存用户操作:' + action + ' 时间戳:' + timestamp);
            setConfig('last_' + action, timestamp);
            if (value) {
                setConfig(action, value);
            }
      }
      
      // 添加按钮点击反馈
      function addButtonFeedback() {
            var buttons = document.querySelectorAll('.back-button, .run-button');
            for (var i = 0; i < buttons.length; i++) {
                (function(button) {
                  button.addEventListener('mousedown', function() {
                        this.style.transform = 'scale(0.95)';
                  });
                  
                  button.addEventListener('mouseup', function() {
                        this.style.transform = 'scale(1)';
                  });
                  
                  button.addEventListener('mouseleave', function() {
                        this.style.transform = 'scale(1)';
                  });
                })(buttons);
            }
      }

      // AIWROK标准的返回按钮点击处理
      function handleBackButton() {
            printl('返回按钮被点击');
            saveUserAction('back_button_click');
            
            // 如果当前是第一页,关闭界面
            if (currentPageId === 1) {
                showToast('关闭界面');
                dismiss();
            } else {
                // 从历史记录中移除当前页面
                pageHistory.pop();
                // 获取上一页的ID
                var previousPageId = pageHistory;
               
                // 隐藏所有页面
                var pages = document.querySelectorAll('.page');
                for (var i = 0; i < pages.length; i++) {
                  pages.classList.remove('active');
                }
               
                // 显示上一页
                var previousPage = document.getElementById('page' + previousPageId);
                if (previousPage) {
                  previousPage.classList.add('active');
                }
               
                // 更新导航栏状态
                var navItems = document.querySelectorAll('.top-nav-item');
                for (var j = 0; j < navItems.length; j++) {
                  navItems.classList.remove('active');
                }
                navItems.classList.add('active');
               
                // 更新当前页面ID
                currentPageId = previousPageId;
               
                showToast('返回上一页');
                printl('返回到页面: ' + previousPageId);
            }
      }

      // AIWROK标准的运行按钮点击处理
      function handleRunButton(button) {
            // 如果按钮已经处于加载状态,不执行任何操作
            if (button.classList.contains('loading')) {
                return;
            }
            
            printl('运行按钮被点击');
            saveUserAction('run_button_click');
            
            // 添加加载状态
            button.classList.add('loading');
            button.disabled = true;
            
            showToast('开始执行任务');
            
            // 根据当前页面执行对应的脚本
            var selectedItems = [];
            
            // 获取当前页面的所有选中复选框
            var currentPage = document.getElementById('page' + currentPageId);
            var checkboxes = currentPage.querySelectorAll('input:checked');
            
            // 执行对应的脚本函数
            for (var i = 0; i < checkboxes.length; i++) {
                var checkbox = checkboxes;
                var itemId = checkbox.id;
                var label = checkbox.nextElementSibling.textContent;
               
                printl('执行脚本: ' + label);
                selectedItems.push(label);
               
                // 根据不同页面和复选框执行不同的函数
                if (currentPageId === 1) {
                  // 第一页脚本
                  switch (itemId) {
                        case 'item1': runJS(() => { 抖音极速(); }); break;
                        case 'item2': runJS(() => { 快手极速(); }); break;
                        case 'item3': runJS(() => { 汽水音乐(); }); break;
                        case 'item4': runJS(() => { 番茄畅听音乐(); }); break;
                        case 'item5': runJS(() => { 西瓜视频(); }); break;
                        case 'item6': runJS(() => { 番茄畅听(); }); break;
                        case 'item7': runJS(() => { 番茄小说(); }); break;
                        case 'item8': runJS(() => { 悟空浏览器(); }); break;
                        case 'item9': runJS(() => { 红果短剧(); }); break;
                        case 'item10': runJS(() => { 头条广告单版(); }); break;
                        case 'item11': runJS(() => { 头条极速广告单版(); }); break;
                        case 'item12': runJS(() => { 喜番短剧(); }); break;
                        case 'item13': runJS(() => { 快手正式(); }); break;
                        case 'item14': runJS(() => { 苹果删除APP(); }); break;
                        case 'item15': runJS(() => { 测试函数2(); printl('测试2脚本已启动'); }); break;
                  }
                } else if (currentPageId === 2) {
                  // 第二页脚本
                  switch (itemId) {
                        case 'item21': runJS(() => { 喜番快手正式快手极速(); printl('喜番极速快手正式快手混跑脚本已启动'); }); break;
                        case 'item22': runJS(() => { 抖音极速西瓜汽水(); printl('极速抖音混跑脚本已启动'); }); break;
                        case 'item23': runJS(() => { 红果悟空番茄畅听音乐(); printl('红果混跑脚本已启动'); }); break;
                        case 'item24': runJS(() => { 番茄小说番茄畅听(); printl('番茄小说混跑脚本已启动'); }); break;
                        case 'item25': runJS(() => { 抖音极速西瓜汽水新手(); printl('西瓜视频脚本已启动'); }); break;
                        case 'item26': runJS(() => { 红果悟空番茄畅听音乐新手(); printl('番茄畅听脚本已启动'); }); break;
                        case 'item27': runJS(() => { 番茄小说番茄畅听新手(); printl('番茄小说脚本已启动'); }); break;
                        case 'item28': runJS(() => { 喜番快手正式快手极速新手模式(); printl('喜番快手正式快手极速新手模式已启动'); }); break;
                        case 'item29': runJS(() => { 喜番快手正式快手极速周期(); }); break;
                        case 'item30': runJS(() => { 抖音系周期做任务(); }); break;
                        case 'item31': runJS(() => { 抖音系周期养号(); }); break;
                  }
                } else if (currentPageId === 3) {
                  // 第三页脚本
                  switch (itemId) {
                        case 'item41': runJS(() => { 抖音系周期养号(); printl('抖音系周期养号脚本已启动'); }); break;
                        case 'item42': runJS(() => { 抖音系周期做任务(); printl('抖音系周期任务脚本已启动'); }); break;
                        case 'item43': runJS(() => { 喜番快手正式快手极速周期(); printl('喜番快手正式快手极速周期脚本已启动'); }); break;
                        case 'item44': runJS(() => { 抖音系新手模式(); printl('抖音系新手模式脚本已启动'); }); break;
                        case 'item45': runJS(() => { 快手系新手模式(); printl('快手系新手模式脚本已启动'); }); break;
                        case 'item46': runJS(() => { 番茄小说番茄畅听新手(); printl('番茄小说番茄畅听新手模式脚本已启动'); }); break;
                        case 'item47': runJS(() => { 红果悟空番茄畅听音乐新手(); printl('红果悟空番茄畅听音乐新手模式脚本已启动'); }); break;
                        case 'item48': runJS(() => { 抖音极速西瓜汽水新手(); printl('抖音极速西瓜汽水新手模式脚本已启动'); }); break;
                        case 'item49': runJS(() => { 快手系新手模式(); printl('快手系新手模式脚本已启动'); }); break;
                        case 'item50': runJS(() => { 番茄小说番茄畅听(); printl('番茄小说番茄畅听音乐脚本已启动'); }); break;
                        case 'item51': runJS(() => { 抖音极速西瓜汽水(); printl('抖音极速西瓜汽水脚本已启动'); }); break;
                        case 'item52': runJS(() => { 喜番快手正式快手极速(); printl('喜番快手正式快手极速脚本已启动'); }); break;
                  }
                } else if (currentPageId === 4) {
                  // 第四页备用脚本
                  switch (itemId) {
                        case 'item61': runJS(() => { 备用任务1(); printl('备用任务1脚本已启动'); }); break;
                        case 'item62': runJS(() => { 备用任务2(); printl('备用任务2脚本已启动'); }); break;
                        case 'item63': runJS(() => { 备用任务3(); printl('备用任务3脚本已启动'); }); break;
                        case 'item64': runJS(() => { 备用任务4(); printl('备用任务4脚本已启动'); }); break;
                        case 'item65': runJS(() => { 备用任务5(); printl('备用任务5脚本已启动'); }); break;
                        case 'item66': runJS(() => { 备用任务6(); printl('备用任务6脚本已启动'); }); break;
                        case 'item67': runJS(() => { 备用任务7(); printl('备用任务7脚本已启动'); }); break;
                        case 'item68': runJS(() => { 备用任务8(); printl('备用任务8脚本已启动'); }); break;
                        case 'item69': runJS(() => { 备用任务9(); printl('备用任务9脚本已启动'); }); break;
                        case 'item70': runJS(() => { 备用任务10(); printl('备用任务10脚本已启动'); }); break;
                  }
                }
            }
            
            // 如果没有选中任何复选框
            if (selectedItems.length === 0) {
                showToast('请先选择要执行的任务');
            }
            
            // 模拟任务执行过程
            setTimeout(function() {
                // 移除加载状态
                button.classList.remove('loading');
                button.disabled = false;
               
                // 显示执行完成提示
                if (selectedItems.length > 0) {
                  showToast('任务执行完成');
                }
            }, 2000);
      }



      // 页面历史记录,用于实现返回功能
      var pageHistory = ; // 初始页面是第一页
      var currentPageId = 1;

      // AIWROK标准的复选框变化处理
      function handleCheckboxChange(checkbox) {
            var label = checkbox.nextElementSibling;
            if (checkbox.checked) {
                label.style.color = '#d32f2f';
                label.style.fontWeight = '600';
                printl('选中: ' + label.textContent);
                saveUserAction('checkbox_' + checkbox.id, 'checked');
            } else {
                label.style.color = '#333';
                label.style.fontWeight = 'normal';
                printl('取消选中: ' + label.textContent);
                saveUserAction('checkbox_' + checkbox.id, 'unchecked');
            }
      }

      // 页面切换函数
      function switchPage(pageId) {
            // 如果是当前页面,不进行切换
            if (currentPageId === pageId) {
                return;
            }

            // 隐藏所有页面
            var pages = document.querySelectorAll('.page');
            for (var i = 0; i < pages.length; i++) {
                pages.classList.remove('active');
            }

            // 显示选中的页面
            var selectedPage = document.getElementById('page' + pageId);
            if (selectedPage) {
                selectedPage.classList.add('active');
            }

            // 更新导航栏状态
            var navItems = document.querySelectorAll('.top-nav-item');
            for (var j = 0; j < navItems.length; j++) {
                navItems.classList.remove('active');
            }
            navItems.classList.add('active');

            // 记录页面历史
            pageHistory.push(pageId);
            currentPageId = pageId;

            printl('切换到页面: ' + pageId);
      }

      // 页面加载完成后初始化
      window.onload = function() {
            printl('页面加载完成');
            
            // 为导航栏添加点击事件
            var navItems = document.querySelectorAll('.top-nav-item');
            for (var i = 0; i < navItems.length; i++) {
                (function(index) {
                  navItems.addEventListener('click', function(e) {
                        e.preventDefault();
                        switchPage(index + 1);
                  });
                })(i);
            }
            
            // 添加按钮点击反馈
            addButtonFeedback();
            
            printl('初始化完成,所有交互功能已就绪');
      };
    </script>
</body>
</html>
    `);
            
            // 加载完成后解析Promise
            resolve(web);
      } catch (error) {
            // 处理错误
            printl('创建WebView时发生错误: ' + error.message);
            reject(error);
      }
    });
}

// 执行脚本必须放到异步函数中 否则会卡顿
async function demonstrateWebViewMethods() {
    printl('开始演示 WebView 控件的各种方法');
   
    // 1. 创建并显示 WebView
    var webView = await createGreenThemedWebViewExample();
    printl('1. WebView 已创建并显示绿色主题界面');
   
    // 2. 演示 loadUrl 方法(注释形式,避免实际跳转)
    // webView.loadUrl('https://www.baidu.com');
    printl('2. loadUrl 方法可用于加载网页 URL');
   
    // 3. 演示 loadFile 方法(注释形式)
    // webView.loadFile('index.html');
    printl('3. loadFile 方法可用于加载本地文件');
   
    // 4. 演示 dismiss 方法(注释形式,避免实际关闭)
    // webView.dismiss();
    printl('4. dismiss 方法可用于关闭界面');
   
    printl('WebView 控件方法演示完成');
}

// 运行示例
demonstrateWebViewMethods();

页: [1]
查看完整版本: 苹果H5界面完整调用脚本示例