解决方案:jquery如何实现元素向上滑动消失
优采云 发布时间: 2022-11-01 02:59解决方案:jquery如何实现元素向上滑动消失
这文章将详细讲解jquery是如何实现元素上下滑动的,小编感觉还挺实用的,分享给大家参考,希望大家看完这文章能有所收获。
方法: 1. 使用 slideUp(),语法 “$(”element“).slideUp(毫秒)”,它将通过滑动模式隐藏所选元素;2.使用slideToggle(),语法“$(”element“).slideToggle(毫秒)”,当元素显示时,元素将被滑动隐藏。
本教程操作环境:Windows 7系统,jquery版本1.10.2,戴尔G3计算机。
jQuery实现了元素向上滑动和消失的方法
1. 使用 slideUp()。
slideUp() 方法通过滑动来隐藏所选元素。
注意:隐藏的元素不会完全显示(不再影响页面的布局)。
$(document).ready(function() { $(".btn1").click(function() { $("p").slideUp(1000);
});
});
<p>这是一个段落。 上滑隐藏元素 </p>
2) 使用 slideToggle()。
slideToggle() 检查所选元素的可见状态,如果元素可见,则向上滑动将其隐藏;如果元素处于隐藏状态,则通过向下滑动来显示该元素。
$(document).ready(function() { $(".btn1").click(function() { $("p").slideToggle(1000);
});
});
<p>这是一个段落。 滑动的隐藏/显示元素 </p>
解决方案:drools规则引擎可视化
参考:drools 规则引擎可视化
Drools是一个基于Java的优秀规则引擎,将复杂多变的业务规则从硬编码中解放出来,以规则脚本的形式存储在文件中,这样修改规则就可以在不改变代码和重启服务的情况下生效。
Drools 有一定的学习成本。官方英文文档很详细,但是中文文档很少。本文将通过一篇文章文章介绍Drools的使用和动态部署。这也是我学习后的总结。有帮助。
官网地址:
github:
使用简单
为不同产品设置不同折扣的示例 pom.xml
org.droolsgroupId>
drools-compilerartifactId>
7.23.0.Finalversion>dependency>
kmodule.xml文件用于配置规则脚本,可以有多个kbase
该文件可以在项目资源/META-INF目录下自动加载
产品 Bean 实体
//lombok注解@Datapublic class Product {
public static final String DIAMOND = "DIAMOND";
public static final String GOLD = "GOLD";
private String type;
private int discount;
}
资源/规则/Rules.drl 规则脚本
package rulesimport drools.Product
// 当商品类型是DIAMOND时,打折为15%
rule Offer4Diamond
when
productObject:Product(type == Product.DIAMOND)
then
productObject.setDiscount(15);
end
<p>
//当商品类型是GOLD时,打折为25%
rule Offer4Gold
when
productObject: Product(type == Product.GOLD)
then
productObject.setDiscount(25);
end</p>
junit 测试
@Testpublic void droolsTest() {
KieServices ks = KieServices.Factory.get();
KieContainer kieContainer = ks.getKieClasspathContainer();
KieSession kSession = kieContainer.newKieSession("ksession-rule");
Product product = new Product();
product.setType(Product.GOLD);
kSession.insert(product);
int count = kSession.fireAllRules();
System.out.println("命中了" + count + "条规则");
System.out.println("商品" + product.getType() + "的商品折扣为" + product.getDiscount() + "%");
}
运行结果
命中了1条规则商品GOLD的商品折扣为25%
解释
kmodule.xml
流口水测试
动态规则
实现动态规则有几种思路
1.使用Workbench通过web管理页面动态生成配置规则
2、要将规则以字符串的形式存储在数据库中,需要自己开发一个规则管理系统
使用工作台
1.Docker部署工作台
工作台
docker run -p 8080:8080 -p 8001:8001 -d --name drools-wb jboss/drools-workbench-showcase:7.5.0.Finalkie-server
docker run -p 8180:8180 -d --name kie-server --link drools-wb:kie_wb jboss/kie-server-showcase:7.5.0.Final
访问地址:8080/drools-wb
默认帐户/密码 admin/admin
2.创建项目
3. 创建对象
4.创建DRL文件
5. 部署
6.使用部署的规则文件
远程规则Maven仓库地址获取
本地Maven仓库的settings.xml配置,这里只摘录需要添加的3个地方,需要相应添加
adminusername> adminpassword> guvnor-m2-repoid>server> guvnor-m2-repoid> guvnor-m2-repoid> Guvnor M2 Reponame> http://10.211.55.7:8080/drools-wb/maven2/url> defaultlayout> trueenabled> alwaysupdatePolicy> releases> trueenabled> alwaysupdatePolicy> snapshots> repository> repositories> trueactiveByDefault> activation>profile> guvnor-m2-repoactiveProfile>activeProfiles>
创建标准 SpringBoot 项目
产品实体,包路径要与规则文件一致
@Datapublic class Product { private String type; private int discount;}
DroolsController.java
@RestController@RequestMapping("/api/")@Slf4jpublic class DroolsController { @PostMapping("getdiscount") public Product getDiscount(Product product) throws IOException { KieServices ks = KieServices.Factory.get(); //RELEASE 代表使用jar包的最新正式版 ReleaseIdImpl releaseId = new ReleaseIdImpl("com.myteam", "test", "RELEASE"); KieContainer kieContainer = ks.newKieContainer(releaseId); //自动扫描Maven仓库,有新版本会自动下载 KieScanner kieScanner = ks.newKieScanner(kieContainer); kieScanner.start(3000); KieSession kieSession = kieContainer.newKieSession(); kieSession.insert(product); int count = kieSession.fireAllRules(); log.info("共执行了{}条规则", count); log.info("商品{}的折扣为{}%", product.getType(), product.getDiscount()); return product; }}
PostMan 访问接口
与DRL规则文件中的配置一致
7.动态规则
修改ppdrl.drl规则表,修改GOLD的折扣为50%,保存规则,项目版本加一,构建部署项目
再次访问界面,GOLD的折扣变成了50%,不重启服务