Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为ImageMapster创建PHP生成的工具提示?_Javascript_Php_Jquery_Imagemapster - Fatal编程技术网

Javascript 如何为ImageMapster创建PHP生成的工具提示?

Javascript 如何为ImageMapster创建PHP生成的工具提示?,javascript,php,jquery,imagemapster,Javascript,Php,Jquery,Imagemapster,我正在为我的公司绘制一张平面图,看看每个员工的办公桌在哪里,所以如果你想拜访某人,你可以很容易地事先找到他 我创建了一个包含大量的,用于高亮显示表格,并在工具提示中显示有关员工的一些信息(照片、姓名、职位等(小型名片)) 因为在mapster初始化中手动更改区域并不是最佳选择,所以我想通过PHP加载工具提示的标题 到目前为止,我已经做到了: <div class="mapster-map"> <img src="images/floor_2.png" border="0

我正在为我的公司绘制一张平面图,看看每个员工的办公桌在哪里,所以如果你想拜访某人,你可以很容易地事先找到他

我创建了一个包含大量
,用于高亮显示表格,并在工具提示中显示有关员工的一些信息(照片、姓名、职位等(小型名片))

因为在mapster初始化中手动更改
区域
并不是最佳选择,所以我想通过PHP加载工具提示的标题

到目前为止,我已经做到了:

<div class="mapster-map">
    <img src="images/floor_2.png" border="0" width="1300" height="1300" usemap="map_floor_2" alt="" />
    <map name="map_floor_2" id="ImageMap-map_floor_2">
        <?php
            $found = array();
            foreach ($tables as $t) {
                $user = $map->getSeatedEmployee($t['id']);
                if (!empty($user)) {
                    $found[] = array('key'=>$t['id'], 'toolTip'=>$user['jmeno'] . ' ' . $user['prijmeni']);
                }
                echo '<area id="' . $t['id'] . '" coords="' . $t['coords'] . '" shape="' . $t['shape'] . '" alt=""
                title="' . (!empty($user) ? $user['name'] . ' ' . $user['surname'] : '') . '" href="' . (!empty($user) ? 'user_detail.php?id=' . $user['id'] : '#') . '" />';
            }
            $found = json_encode($found);
        ?>
    </map>
</div>
<script>
    $('img[usemap]').mapster({
        mapKey: 'id',
        fillColor: 'EE1C23',
        fillOpacity: 0.65,
        showToolTip: true,
        areas:[<?php echo $found ?>]
    });
</script>

我无可救药地被困在这个问题上,希望有人能想出一个办法来解决这个问题。

在你的JavaScript
区域中
应该只有一个方括号
区域:[……]
而不是两个嵌套的
区域:[……]
。根据文件。所以我们只需要去掉那些额外的括号:

$('img[usemap]').mapster({
    ... ,
    areas:[{"key":"2-13-2","toolTip":"Adam Jones"},{"key":"2-13-1","toolTip":"Bon Jovi"},{"key":"2-13-1","toolTip":"Charles Copperfield"},{"key":"2-13-1","toolTip":"Christina Davis"}]
}); 
我们可以在JavaScript中删除它们,如下所示:

areas:[<?php echo $found ?>]
区域:[]

领域:

由于
$found
是一个数组,因此它具有所需的括号。

在非PHP生成的纯HTML中是否可以使用?我不确定这一点,但是
区域
应该有两个括号吗<代码>区域:[[…]]
?天哪,谢谢!我没有注意到这一点,当然只有一对括号。现在它工作得很好:)我正在尝试做类似的事情,但使用jQuery变量,但它不起作用。。有什么想法吗?jQuery(“#位置映射”).mapster({fillColor:'efc254',fillOpacity:1,stroke:true,strokeColor:'03325e',strokeWidth:2,singleSelect:true,mapKey:'state',boundList:jQuery('#boundList')。find('li',listKey:'state',listSelectedClass:'selected',showToolTip:true,areas:['areasContainer'] });
$('img[usemap]').mapster({
    ... ,
    areas:[{"key":"2-13-2","toolTip":"Adam Jones"},{"key":"2-13-1","toolTip":"Bon Jovi"},{"key":"2-13-1","toolTip":"Charles Copperfield"},{"key":"2-13-1","toolTip":"Christina Davis"}]
}); 
areas:[<?php echo $found ?>]
areas: <?php echo $found ?>