自定义指令传参

本文介绍如何使用Vue.js自定义指令实现DOM元素的固定定位,并通过实例演示了如何根据不同的条件改变元素的位置和样式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<div v-pin:xxx.bottom.right="card1.pinned"  :class="liked">111
    <button @click="card1.pinned = !card1.pinned"></button>
</div>
Vue.directive('pin',function (el,binding) {
    var el = el; //el代表所在元素

//v-pin:xxx.bottom.right="card1.pinned"

var val = binding.value; //card1.pinned中的card1.pinned对应data值 例子中是true或false var position = binding.modifiers; //bottom和right var warning = binding.arg; //xxx console.log("val:",warning) if(val){ el.style.position = 'fixed'; for(var P in position){ // console.log(P) if(position[P]){ console.log([P])

el.style[P] = '10px'

} } if(warning ==='xxx'){ el.style.background = 'yellow' } }else { el.style.position = 'static'; } }) var app = new Vue({ el:"#app", data:{ liked:'liked', card1:{ pinned:false } } })
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值