B2B网络软件
标题:
苹果H5界面完整调用脚本示例
[打印本页]
作者:
YYPOST群发软件
时间:
2 小时前
标题:
苹果H5界面完整调用脚本示例
苹果H5界面完整调用脚本示例
1.png
(649.5 KB, 下载次数: 0)
下载附件
3 小时前
上传
//🍎交流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[type="checkbox"] {
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[type="checkbox"]:checked {
background-color: #fff;
border-color: #000;
}
.checkbox-item input[type="checkbox"]: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[key] = 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[key] !== undefined) {
value = window._memoryStorage[key];
}
}
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[i]);
}
}
// AIWROK标准的返回按钮点击处理
function handleBackButton() {
printl('返回按钮被点击');
saveUserAction('back_button_click');
// 如果当前是第一页,关闭界面
if (currentPageId === 1) {
showToast('关闭界面');
dismiss();
} else {
// 从历史记录中移除当前页面
pageHistory.pop();
// 获取上一页的ID
var previousPageId = pageHistory[pageHistory.length - 1];
// 隐藏所有页面
var pages = document.querySelectorAll('.page');
for (var i = 0; i < pages.length; i++) {
pages[i].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[j].classList.remove('active');
}
navItems[previousPageId - 1].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[type="checkbox"]:checked');
// 执行对应的脚本函数
for (var i = 0; i < checkboxes.length; i++) {
var checkbox = checkboxes[i];
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 = [1]; // 初始页面是第一页
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[i].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[j].classList.remove('active');
}
navItems[pageId - 1].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[index].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();
复制代码
欢迎光临 B2B网络软件 (http://bbs.niubt.cn/)
Powered by Discuz! X3.2