动态jquery单击函数

动态jquery单击函数,jquery,Jquery,我有一个小剧本: <script type="text/javascript"> $(document).ready(function(){ $('a').click(function (e) { e.preventDefault(); $('#iframe2').show(1000); $('#iframe2').attr('src', "http://www.htp-crm.pl/"); $(th

我有一个小剧本:

<script type="text/javascript">
    $(document).ready(function(){
      $('a').click(function (e) {
        e.preventDefault();
        $('#iframe2').show(1000);
        $('#iframe2').attr('src', "http://www.htp-crm.pl/");
        $(this).hide(1000);
      }); 
    });
</script>

$(文档).ready(函数(){
$('a')。单击(函数(e){
e、 预防默认值();
$('iframe2')。show(1000);
$('iframe2').attr('src',”http://www.htp-crm.pl/");
$(此).hide(1000);
}); 
});
和html:

<a href="#" id="1">LINK1</a><br>
<a href="#" id="2">LINK2</a><br>
<a href="#" id="3">LINK3</a><br>
1<iframe id="iframe1" style="display: none;"></iframe><br>
2<iframe id="iframe2" style="display: none;"></iframe><br>
3<iframe id="iframe3" style="display: none;"></iframe><br>



1
2
3
如何通过动态函数实现这一点? 它将始终保持不变: id为1的链接显示iframe1 id为2的链接显示iframe2 ... id=27的链接显示iframe27


我用这个:

<script type="text/javascript">
    $(document).ready(function(){
        $('a').click(function (e) {
            var linkId=$(this).attr('class');
            e.preventDefault();
            $('.show_km_'+linkId).show(1000);
            $('.show_km_'+linkId).attr('src', "calendar_files/index-km.php?id='.$row['iid'].'");
            $(this).hide(1000);
        }); 
    });
</script>

$(文档).ready(函数(){
$('a')。单击(函数(e){
变量linkId=$(this.attr('class');
e、 预防默认值();
$('.show_km.+linkId).show(1000);
$('.show_km_'+linkId).attr('src',“日历文件/索引km.php?id=”。$row['iid'.');
$(此).hide(1000);
}); 
});
我用这个脚本显示我和所选地址之间的谷歌距离。 如果iframe有“显示:无”,为什么我对位置权限有疑问? 我想在我单击链接显示iframe后,问题可能会出现:( 我能在这里换些东西吗

//好的,我修复谷歌地图脚本:)。谢谢大家告诉我如何改变脚本。致以最良好的祝愿

试试这个

<script type="text/javascript">
    $(document).ready(function(){
        $('a').click(function (e) {
            var linkId=$(this).attr('id');
            e.preventDefault();
            $('#iframe'+linkId).show(1000);
            $('#iframe'+linkId).attr('src', "http://www.htp-crm.pl/");
            $(this).hide(1000);
        }); 
    });
</script>

$(文档).ready(函数(){
$('a')。单击(函数(e){
变量linkId=$(this.attr('id');
e、 预防默认值();
$('iframe'+linkId).show(1000);
$('#iframe'+linkId).attr('src',”http://www.htp-crm.pl/");
$(此).hide(1000);
}); 
});

您可以在锚点上迭代以获取
id
,并将该
id
分配给要显示的iframe:

$('a').click(function(e) {
    e.preventDefault();
    var id = $(this).attr('id');
    $('iframe#' + id).show();
})

我建议使用
数据
引用锚和iFrame之间的链接,如下所示

<a href="#" data-iframe="iframe1">LINK1</a><br>
<a href="#" data-iframe="iframe2">LINK2</a><br>
<a href="#" data-iframe="iframe3">LINK3</a><br>
1<iframe id="iframe1" style="display: none;"></iframe><br>
2<iframe id="iframe2" style="display: none;"></iframe><br>
3<iframe id="iframe3" style="display: none;"></iframe><br>
<script type="text/javascript">
    $(document).ready(function(){
        $("a").on("click", function (e) {
            e.preventDefault();
            var $iframe = $("#" + $(this).data("iframe"));
            $iframe.show(1000);
            $iframe.attr("src", "http://www.htp-crm.pl/");
            $(this).hide(1000);
        }); 
    });
</script>

我还建议不要在ID中使用数字。除了阅读它不友好,因为它没有告诉你它是什么之外,一些浏览器不喜欢它。

我想从他的问题可以明显看出他是怎么尝试的。.你不需要使用
每一个
<代码>单击(
)(或(“单击”)上的
仍将迭代选定的元素。您是对的。我想更改某些“类”或“数据”的ID。谢谢。