JQuery 简单的函数调用

<!DOCTYPEhtml><html><head><scriptsrc="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jq... <!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>

function bef(){
$("#btn1").click(function(){$("img").before("<b>Before</b>");})
}

function aft(){
$("#btn2").click(function(){$("img").after("<i>After</i>");})
}

</script>
</head>

<body>
<img src="/i/eg_w3school.gif" alt="W3School Logo" />
<br><br>
<button id="btn1 onClick="bef()">在图片前面添加文本</button>
<button id="btn2" onClick="aft()">在图片后面添加文本</button>
</body>
</html>
想用两个按钮,分别在图片前后添加文本,但是不能实现,在下初学JS,可能是低级错误,望大神见谅。
展开
 我来答
刺友互
高粉答主

2019-07-20 · 每个回答都超有意思的
知道答主
回答量:3979
采纳率:100%
帮助的人:75.2万
展开全部

1、首先建立一个静态页面命名为js.html,标题为“JS函数调用的方法”。

2、在js.html的页面<head></head>之间加入 <script></script>。

3、在 <script></script>中加入一个js函数 toalert,当点击一个button的时候弹出一个alert。

4、在body之中加入一个button,并且添加一个onclick点击事件。

5、在onclick的事件中,加入js的toalert函数名,加载onclick事件的双引号中即可。

6、为了让button看的更明显一些,可以设置一下button的样式,设置宽为100px,高为30px,字的颜色为红色。

7、用浏览器打开js.html,如果点击按钮能够弹出“JS函数调用的方法”,说明调用js函数是成功的。

小白聊电子科技
高粉答主

2020-02-22 · 专注电子数码问题解答
小白聊电子科技
采纳数:775 获赞数:75490

向TA提问 私信TA
展开全部

1、html加载CDN jQuery库,如果加载失败调用本地jQuery。

2、click事件:click单击事件,点击元素,并鼠标抬起。

3、dbclick事件:dbclick是双击事件,两次点击相同元素。

4、mousedown事件和mouseup事件,第一个是鼠标点击事件,第二个是鼠标抬起事件。

5、mouseenter事件和mouseleave事件。第一个是光标移入元素调用,第二个是光标移除元素调用。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
绛紫方糖
推荐于2017-12-16 · TA获得超过742个赞
知道小有建树答主
回答量:197
采纳率:0%
帮助的人:234万
展开全部

你的结构写错了,重复注册,并且在函数作用域结束后被销毁了,所以完全起不到作用。

写法有两种

1.通过jQuery绑定button的click操作,然后进行操作

$(function() {  // 这是document的ready事件的简写,jquery的dom操作得写在document加载后
  img = $('img');  // 寄存jquery选择对象,提高效率
  $('#btn1').on('click', function() {  // 这里等同于click()方法
    img.before("<b>Before</b>");
  });
  $('#btn2').on('click', function() {  // 这里等同于click()方法
    img.after("<i>After</i>");
  });
});

这里注意,button标签就不要再重复定义onclick了

2.定义函数,在button元素的onclick属性中调用

function bef(){  
 $("img").before("<b>Before</b>");
}

function aft(){ 
 $("img").after("<i>After</i>");
}
<button id="btn1"  onClick="bef()">在图片前面添加文本</button>
<button id="btn2" onClick="aft()">在图片后面添加文本</button>
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友992e050a8
2013-11-07 · TA获得超过583个赞
知道小有建树答主
回答量:272
采纳率:0%
帮助的人:323万
展开全部
<body>
// 最好加上id 方便选取元素
<img id="logo" src="/i/eg_w3school.gif" alt="W3School Logo" />
<br><br>
<button id="btn1"  onclick="bef()">在图片前面添加文本</button>
<button id="btn2" onclick="aft()">在图片后面添加文本</button>
</body>
<script>
function bef(){
// 选取元素
var obj = document.getElementById("logo");
// 在前面插入文本
obj.insertAdjacentHTML("beforeBegin","text");
}
function aft(){
// 选取元素
var obj = document.getElementById("logo");
// 在后面插入文本
obj.insertAdjacentHTML("afterEnd","text");
}

</script>


insertAdajcentHTML(swhere,stext)

参数:

swhere: 指定插入html标签语句的地方,有四种值可用:

1.     beforeBegin: 插入到标签开始前

2.     afterBegin:插入到标签开始标记之后

3.     beforeEnd:插入到标签结束标记前

4.     afterEnd:插入到标签结束标记后

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阿刚炖蛋
2013-11-07 · TA获得超过3004个赞
知道大有可为答主
回答量:1789
采纳率:92%
帮助的人:1007万
展开全部

你好!!

<button id="btn1  onClick="bef()">在图片前面添加文本</button>---->"btn1" 少了个引号
<button id="btn2" onClick="aft()">在图片后面添加文本</button>
如果使用onclick的话,直接在对应的函数中书写逻辑即可,如下:
function bef(){  
      $("img").before("<b>Before</b>");
}

如果想使用 $("#btn1").click(...)这种方式的话,就不需要在button标签中写onclick属性了,如下:
<button id="btn1">在图片前面添加文本</button>
<script>
    $(function(){
        $("#btn1").click(function(){$("img").before("<b>Before</b>");})
    });
</script>

//以上两种都可以实现功能,但是如果放到一起,你会发现,第一次通过onclick事件,属于为其进行了一次click事件的绑定,而第二次onclick事件时,会追加两次内容,这个追加的内容会随着你点击的次数而增加···
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式