Javascript 如何读取默认的内联onclick属性,使用内部链接并对其进行处理?
我有一个div列表,它们有单独的onclick函数。 这些函数导致在新窗口中打开http链接。我不能在生成站点之前重写onclick函数,因为它是基于rss文件生成的第三方rss提要。现在我想保留单独的链接,但用它们做些别的事情 年表如下:Javascript 如何读取默认的内联onclick属性,使用内部链接并对其进行处理?,javascript,jquery,html,Javascript,Jquery,Html,我有一个div列表,它们有单独的onclick函数。 这些函数导致在新窗口中打开http链接。我不能在生成站点之前重写onclick函数,因为它是基于rss文件生成的第三方rss提要。现在我想保留单独的链接,但用它们做些别的事情 年表如下: 用户单击具有预写onclick函数的元素 onclick函数被阻止在新页面中打开 onclick函数中的链接将保存以供进一步使用 HTML5音频元素获取链接作为源 到目前为止,我已经尝试覆盖onclick函数。但我在这个过程中丢失了http链接 <di
<div class="fw-feed-item-url"
onclick="window.open('http://www.example.com/podcasts/podcast_eposode3.mp3'
, '_blank')">
在JavaScript中,回调和事件处理程序应该按照它们被绑定的顺序执行,并且没有办法改变顺序。onclick属性中的代码将在创建元素后直接绑定,因此将是第一个执行的代码 防止这种情况发生的唯一方法是使用jQuery的
.removeAttr
在源代码或客户端删除该属性。因此,在页面加载时重写onclick
事件,如下面的示例代码所示
<script>
$(document).ready(function() {
var $elements = $(".fw-feed-item-url");
// Iterate over elements
$elements.each(function () {
var $elm = $(this);
// Reference to onclick attribute value for future use
var onClick = $elm.attr("onclick");
console.log(onClick);
// Remove onclick attr and bind your own click event
$elm.removeAttr("onclick").click(function () {
//Own code comes here
alert("Whoa!!!! click worked!!");
})
});
});
$(文档).ready(函数(){
var$elements=$(“.fw提要项url”);
//迭代元素
$elements.each(函数(){
var$elm=$(本);
//对onclick属性值的引用以供将来使用
var onClick=$elm.attr(“onClick”);
console.log(onClick);
//删除onclick attr并绑定您自己的click事件
$elm.removeAttr(“onclick”)。单击(函数(){
//这里有自己的代码
警告(“哇!!!!点击工作!!”;
})
});
});
引用自
在JavaScript中,回调和事件处理程序应该按照绑定的顺序执行,并且没有办法改变顺序。onclick属性中的代码将在创建元素后直接绑定,因此将是第一个执行的代码 防止这种情况发生的唯一方法是使用jQuery的
.removeAttr
在源代码或客户端删除该属性。因此,在页面加载时重写onclick
事件,如下面的示例代码所示
<script>
$(document).ready(function() {
var $elements = $(".fw-feed-item-url");
// Iterate over elements
$elements.each(function () {
var $elm = $(this);
// Reference to onclick attribute value for future use
var onClick = $elm.attr("onclick");
console.log(onClick);
// Remove onclick attr and bind your own click event
$elm.removeAttr("onclick").click(function () {
//Own code comes here
alert("Whoa!!!! click worked!!");
})
});
});
$(文档).ready(函数(){
var$elements=$(“.fw提要项url”);
//迭代元素
$elements.each(函数(){
var$elm=$(本);
//对onclick属性值的引用以供将来使用
var onClick=$elm.attr(“onClick”);
console.log(onClick);
//删除onclick attr并绑定您自己的click事件
$elm.removeAttr(“onclick”)。单击(函数(){
//这里有自己的代码
警告(“哇!!!!点击工作!!”;
})
});
});
引用自
请添加更多代码,以显示您迄今为止的尝试。我添加了我试图实现的jQuery函数。标准onclick函数的预防工作正常。然而,替换音频src和读取标准onclick函数的属性并不是这样。想想我看到的
eval
实际上是什么,所以eval不仅读取值,而且还执行它,对吗?请添加更多代码,以显示您迄今为止的尝试。我添加了我试图实现的jQuery函数。标准onclick函数的预防工作正常。然而,替换音频src和读取标准onclick函数的属性并没有。想想eval
实际上看到了什么,所以eval不仅读取值,而且还执行它,对吗?