我目前有一个谷歌地图填充了数据库中的数据.我正在使用markerclusterer v3来聚类标记以使地图加载更快.我已经搜索了文档,似乎无法找到一种方法来获取地图边界中所有标记的列表.基本上我正在尝试在外部div中创建标记地址的外部列表.目前在页面加载时,它会附加整个收件人列表.我想要做的只是标记,以及当时出现在该地图上的群集中包含的标记出现在列表中.所以在缩放13处有6个簇,每个簇有3个,还有一个独奏标记.在缩放14处,存在3个3和2个独立标记的簇.在缩放13处,列表中将有19个地址,而在缩放14处,列表中将有11个地址.只是地图边界中的标记列表.我目前在初始地图创建时加载所有地址一次.我想在每次缩放时向服务器创建一个ajax帖子,但认为在每个地图移动上调用服务器都没有必要.必须有一种方法来获取由markersclusterer控制的边界中的标记列表.
.js文件
var markers = [];
for (var i = 0; i < data.coords.length; i++) {
var dataInd = data.coords[i];
var latLng = new google.maps.LatLng(dataInd[1],dataInd[2]);
var marker = new google.maps.Marker({position: latLng});
markers.push(marker);
}
var map;
var myOptions = {
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
function init() {
map = new google.maps.Map(document.getElementById("map"), myOptions);
var markerCluster = new MarkerClusterer(map, markers);
}
for (var i=0; i < markers.length; i++) {
if (map.getBounds.contains(markers[i])) {
console.log(markers);
} else {
console.log('failed');
}
}
google.maps.event.addDomListener(window, 'load', …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用imagemagick制作蒙太奇.我让它部分工作.我想制作2列2列的蒙太奇.在图像之间的5px填充,在白色背景上.当我使用下面的代码时,得到的图像是一个图像的两倍高和两倍宽,尽管只有四个图像中的第一个以正确的大小和点出现,其余三个点中出现白色.所有图像的尺寸和文件类型相同.
<?php
header('Content-type: image/jpeg');
$loc1 = 'http://localhost:8888/gallery_edited/0116.jpg';
$loc2 = 'http://localhost:8888/gallery_edited/0115.jpg';
$loc3 = 'http://localhost:8888/gallery_edited/0114.jpg';
$loc4 = 'http://localhost:8888/gallery_edited/0113.jpg';
$image = new Imagick("$loc1 $loc2 $loc3 $loc4");
$image -> setFormat("jpg");
$image = $image -> montageImage(new ImagickDraw, '2x2', '600x400', 0, '0');
echo $image;
Run Code Online (Sandbox Code Playgroud)

我有一个多步骤表单,并且正在尝试创建输入到各种输入、文本区域和单选按钮中的值的实时预览。
到目前为止,我已经构建了表单,并使用以下方法取得了一些成功
.js
$("input[type='text']").change(function() {
$("#preview").append($("input[type='text']").val());
});
Run Code Online (Sandbox Code Playgroud)
.html
<div id="preview"></div>
Run Code Online (Sandbox Code Playgroud)
这适用于第一个输入,但第二个输入重复第一个输入的值。
我本来打算对每个元素 id 进行 jquery 调用,但是还有另一种方法来使用类或 .next 等。我希望如果更愿意重复输入标签,然后是冒号,然后是值。那么在 .html 中这可能吗?
<div id="preview">
<div>Input Label: Input Value</div>
</div>
Run Code Online (Sandbox Code Playgroud) 我一直在使用正则表达式替换从文本框值中删除所有标点符号并替换删除所留下的空格.它工作得很好,除了我意识到我需要它离开.和?在现场.这是我目前正在使用的.如何跳过这两个字符但删除所有其他字符?
脚本
var special = special.replace(/[^\w\s]|_/g, "").replace(/\s+/g, " ");
Run Code Online (Sandbox Code Playgroud) 我一直在尝试在我的 uitableview 上设置一个长按手势识别器。我已经能够注册它,但是它似乎为我提供了不正确的相关行信息。我的 tableview 在正常单击时按预期工作,它通过indexPath.row,我能够从people与该行相关联的数组中获取正确的记录。但是在使用下面的代码时,indexPath.row 似乎不一致并选择上方和下方的行,然后在滚动时长按选择随机记录。
func longPress(_ longPressGestureRecognizer: UILongPressGestureRecognizer) {
if longPressGestureRecognizer.state == UIGestureRecognizerState.began {
let touchPoint = longPressGestureRecognizer.location(in: self.view)
if let indexPath = tableView.indexPathForRow(at: touchPoint) {
let person = people[indexPath.row]
print("\(person.name)")
///////works but erratic responses//////////
}
}
}
//// in view did load i have this
let longPressGesture:UILongPressGestureRecognizer = UILongPressGestureRecognizer(target: self, action: #selector(PeopleVC.longPress(_:)))
longPressGesture.minimumPressDuration = 1.0 // 1 second press
longPressGesture.delegate = self
self.tableView.addGestureRecognizer(longPressGesture)
Run Code Online (Sandbox Code Playgroud) 我正在尝试在导航栏中的导航链接上添加悬停效果,使其成为突出显示的列表项上方的简单实心点。我似乎无法让任何事情发挥作用。我一直在尝试:before and :aftercss 伪选择器。我也确实使用边界属性得到了一条线。有没有一种简单的方法可以做到这一点。
html
<div class="navbar">
<ul>
<li class="active"><a href="#">link 1></a></li>
<li><a href="#">link 2></a></li>
<li><a href="#">link 3></a></li>
<li><a href="#">link 4></a></li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud) javascript ×3
jquery ×3
css ×1
google-maps ×1
html ×1
imagemagick ×1
ios ×1
php ×1
regex ×1
swift ×1